C++对string进行大小写转换的三种方法
方法一:下标
#include <iostream>
#include <string>
using namespace std;int main()
{string s = "ABCDEFG";for( int i = 0; i < s.size(); i++ ){s[i] = tolower(s[i]);}cout<<s<<endl;return 0;
}
方法二:迭代器
#include<iostream>
#include<string>using namespace std;int main()
{string str;//cin >> str; //注意这里对于中间有空格的单词只会将第一个空格前的单词大写getline(cin, str); //可以将一整行的单词大写,两种方式看个人需求取其一即可for (auto it1 = str.begin(); it1 != str.end(); it1++){*it1 = tolower(*it1);}cout << str << endl;return 0;
}//另外如果要将单词化为大写,将tolower换成toupper即可
方法三:通过STL的transform算法配合的toupper和tolower来实现该功能
#include <iostream>
#include <algorithm>
#include <string>using namespace std;int main()
{string s = "ABCDEFG";string result;transform(s.begin(),s.end(),s.begin(),::tolower);cout<<s<<endl;return 0;
}