软件编程
位置:首页>> 软件编程>> C语言>> C++对string进行大小写转换操作方法

C++对string进行大小写转换操作方法

作者:YAIMZA  发布时间:2023-11-03 04:32:59 

标签:C++,string,大小写转换

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进行大小写转换操作方法

补充: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;
}

来源:https://blog.csdn.net/qq_37941471/article/details/81988702

0
投稿

猜你喜欢

手机版 软件编程 asp之家 www.aspxhome.com