C++怎么把字符串中的大写变为小写啊,麻烦写个简单的程序,谢谢

C++怎么把字符串中的大写变为小写啊,麻烦写个简单的程序,谢谢,第1张

字母大小写转换函数的声明包含在stringh头文件中,函数的原型如下:charstrupr(char string)功能:将字符串string中的小写字母转换为大写,并返回指向string的指针。charstrlwr(char string)功能:将字符串string中的大写字母转换为小写,并返回指向string的指针。程序举例:#include<iostreamh>include<stringh>//main()函数void main(void){//char string[80],p;int i;//转换字符串中的小写字母为大写cout<<"convert a string to uppercase:"<<endl;cout<<"string:";cin>>string;p=strupr(string);cout<<"p:"<<p<<endl;cout<<"string:"<<string<<endl;cout<<"--------------"<<endl;//转换字符串的大小写字母为小写cont<<"convert a string to lowercase:"<<endl;cout<<"string:";cin>>string;p=strlwrz(string);cout<<"p:"<<p<<endl;cout<<"string:"<<string<<endl;}将程序命名为p3_164cpp测试运行:convert a string to uppercase:string:AaBb123CcDd <enter>回车p:AABB123CCDD

您好,
C++的Standard Library并没有提供将std::string转成大写和小写的功能,只有在提供将char转成大写(toupper)和小写(tolower)的功能而已,在此利用STL的transform配合toupper/tolower,完成std::string转换大(小)写的功能,也看到Generics的威力,一个transform function,可以适用於任何型别,且只要自己提供Algorithm,就可完成任何Transform的动作。

很简单,如果不是自己实现的话,string里面有做好的方法
12
String str="ABCDEFG";str = strtoLowerCase();
这样str的值就是小写的了"abcdefg"

有2个方法:
toLowerCase()
使用默认语言环境的规则将此 String 中的所有字符都转换为小写。
toLowerCase(Locale locale)
使用给定 Locale 的规则将此 String 中的所有字符都转换为小写

思路:利用对应大小写字符的ASCII码相差32,则遍历输入的字符串,判断每个字符是大写字母还是小写字母,如果是大写字母则自加32就是对应的小写字母,如果是小写字母则自减32就是其对应的大写字母。

参考代码:

#include <stdioh>
int main()
{
char a[100];
int i;
gets(a);
for(i=0;a[i]!='\0';i++)
if(a[i]>='A'&&a[i]<='Z')//表示是大写字母 
a[i]+=32;
else if(a[i]>='a'&&a[i]<='z')//表示是小写字母 
a[i]-=32;
puts(a);
    return 0;

 /
输出:
asfDJY435
ASFdjy435
 /


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12914791.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-28
下一篇 2023-05-28

发表评论

登录后才能评论

评论列表(0条)

保存