如何将一个string中的字符全部转换成大写或者全部转换成小写?C++标准目前并没有直接提供这种方法,但是我们可以通过STL的transform算法配合的toupper和tolower来实现该功能。
#include <iostream>
#include <string>
#include <algorithm>
#include <iterator>
#include <cctype>
using namespace std;
int main()
{
string src = "Hello World!";
string dst;
transform(src.begin(), src.end(), back_inserter(dst), ::toupper);
cout << dst << endl;
transform(src.begin(), src.end(), dst.begin(), ::tolower);
cout << dst << endl;
return 0;
}
运行结果:
HELLO WORLD!
hello world!