Language: C++

#include<iostream>
#include <string>
#include<cctype>

using namespace std;

int main(){
	
	string c;
	
	if(getline(cin,c)){

		if(islower(c))      cout << toupper(c);
		else if(isupper(c)) cout << tolower(c);

	}
	cout << endl;

	return 0;
}

Compiler output:
a.cc: In function 'int main()':
a.cc:13:27: error: no matching function for call to 'islower(std::string&)'
   13 |                 if(islower(c))      cout << toupper(c);
      |                    ~~~~~~~^~~
In file included from /usr/include/c++/14/bits/basic_ios.h:37,
                 from /usr/include/c++/14/ios:46,
                 from /usr/include/c++/14/ostream:40,
                 from /usr/include/c++/14/iostream:41,
                 from a.cc:1:
/usr/include/c++/14/bits/locale_facets.h:2637:5: note: candidate: 'template<class _CharT> bool std::islower(_CharT, const locale&)'
 2637 |     islower(_CharT __c, const locale& __loc)
      |     ^~~~~~~
/usr/include/c++/14/bits/locale_facets.h:2637:5: note:   candidate expects 2 arguments, 1 provided
In file included from /usr/include/c++/14/cctype:42,
                 from /usr/include/c++/14/bits/localefwd.h:42,
                 from /usr/include/c++/14/ios:43:
/usr/include/ctype.h:112:1: note: candidate: 'int islower(int)'
  112 | __exctype (islower);
      | ^~~~~~~~~
/usr/include/ctype.h:112:1: note:   no known conversion for argument 1 from 'std::string' {aka 'std::__cxx11::basic_string<char>'} to 'int'
  112 | __exctype (islower);
      | ^~~~~~~~~
a.cc:13:52: error: no matching function for call to 'toupper(std::string&)'
   13 |                 if(islower(c))      cout << toupper(c);
      |                                             ~~~~~~~^~~
/usr/include/c++/14/bits/locale_facets.h:2687:5: note: candidate: 'template<class _CharT> _CharT std::toupper(_CharT, const locale&)'
 2687 |     toupper(_CharT __c, const locale& __loc)
      |     ^~~~~~~
/usr/include/c++/14/bits/locale_facets.h:2687:5: note:   candidate expects 2 arguments, 1 provided
/usr/include/ctype.h:125:12: note: candidate: 'int toupper(int)'
  125 | extern int toupper (int __c) __THROW;
      |            ^~~~~~~
/usr/include/ctype.h:125:25: note:   no known conversion for argument 1 from 'std::string' {aka 'std::__cxx11::basic_string<char>'} to 'int'
  125 | extern int toupper (int __c) __THROW;
      |                     ~~~~^~~
a.cc:14:32: error: no matching function for call to 'isupper(std::string&)'
   14 |                 else if(isupper(c)) cout << tolower(c);
      |                         ~~~~~~~^~~
/usr/include/c++/14/bits/locale_facets.h:2631:5: note: candidate: 'template<class _CharT> bool std::isupper(_CharT, const locale&)'
 2631 |     isupper(_CharT __c, const locale& __loc)
      |     ^~~~~~~
/usr/include/c++/14/bits/locale_facets.h:2631:5: note:   candidate expects 2 arguments, 1 provided
/usr/include/ctype.h:117:1: note: candidate: 'int isupper(int)'
  117 | __exctype (isupper);
      | ^~~~~~~~~
/usr/include/ctype.h:117:1: note:   no known conversion for argument 1 from 'std::string' {aka 'std::__cxx11::basic_string<char>'} to 'int'
  117 | __exctype (isupper);
      | ^~~~~~~~~
a.cc:14:52: error: no matching function for call to 'tolower(std::string&)'
   14 |                 else if(isupper(c)) cout << tolower(c);
      |                                             ~~~~~~~^~~
/usr/include/c++/14/bits/locale_facets.h:2693:5: note: candidate: 'template<class _CharT> _CharT std::tolower(_CharT, const locale&)'
 2693 |     tolower(_CharT __c, const locale& __loc)
      |     ^~~~~~~
/usr/include/c++/14/bits/locale_facets.h:2693:5: note:   candidate expects 2 arguments, 1 provided
/usr/include/ctype.h:122:12: note: candidate: 'int tolower(int)'
  122 | extern int tolower (int __c) __THROW;
      |            ^~~~~~~
/usr/include/ctype.h:122:25: note:   no known conversion for argument 1 from 'std::string' {aka 'std::__cxx11::basic_string<char>'} to 'int'
  122 | extern int tolower (int __c) __THROW;
      |                     ~~~~^~~