C++对string进行大小写转换操作方法
方法一:
使用C语言之前的方法,使用函数,进行转换
#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;
}
方法二:
通过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;
}
补充:C++ string大小写转换
1、通过单个字符转换,使用C的toupper、tolower函数实现
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main(){
string str = "ancdANDG";
cout << "转换前的字符串: " << str << endl;
for(auto &i : str){
i = toupper(i);//i = tolower(i);
}
cout << "转换后的字符串: " << str << endl;
//或者
for(int i = 0;i < str.size();++i){
str[i] = toupper(s[i]);//str[i] = toupper(s[i]);
}
cout << "转换后的字符串: " << str << endl;
return 0;
}
2、通过STL的transform实现
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main(){
string str = "helloWORLD";
cout << "转换前:" << str << endl;
//全部转换为大写
transform(str.begin(), str.end(), str.begin(), ::toupper);
cout << "转换为大写:" << str << endl;
//全部转换为小写
transform(str.begin(), str.end(), str.begin(), ::tolower);
cout << "转换为小写:" << str << endl;
//前五个字符转换为大写
transform(str.begin(), str.begin()+5, str.begin(), ::toupper);
cout << "前五个字符转换为大写:" << str << endl;
//后五个字符转换为大写
transform(str.begin()+5, str.end(), str.begin()+5, ::toupper);
cout << "前五个字符转换为大写:" << str << endl;
return 0;
}
到此这篇关于C++对string进行大小写转换的文章就介绍到这了,更多相关C++ string大小写转换内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!