参考:http://bbs.csdn.net/topics/20328344
代码如下:
#include <iostream>
#include <string>
#include <algorithm> // transform
using namespace std;
int main()
{
string str = "abcdADcdeFDde!@234";
transform(str.begin(), str.end(), str.begin(), ::toupper);
cout << str << endl;
transform(str.begin(), str.end(), str.begin(), ::tolower);
cout << str << endl;
return 0;
}
注意:编译时可能会遇到下面的错误,请参考这里
error: no matching function for call to ‘transform(__gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, __gnu_cxx::__normal_iterator<char*, std::basic_string<char, std::char_traits<char>, std::allocator<char> > >, <unknown type>)’