string小写变大写(string转化大小写(C++) | Vimer的程序世界)
导读:如何将一个字符串转换成大写或者小写?这是字符串匹配中经常需要做的事情,然而C++的Standard Library并没有提供将std::string转成大写和小写的功能,只有在提供将char转成大写(toupper 和小写(tolower 的功能而已。...
如何将一个字符串转换成大写或者小写?这是字符串匹配中经常需要做的事情 ,然而C++的Standard Library并没有提供将std::string转成大写和小写的功能 ,只有在提供将char转成大写(toupper)和小写(tolower)的功能而已 。
但我们可以利用STL的transform配合toupper/tolower,完成std::string转换大(小)写的功能 ,也看到 模版编程 的威力了 ,一个transform函数 ,可以适用于任何类型 ,且只要自己提供 函数 ,就可完成任何Transform的动作 。
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
#include <string>
#include <cctype>
#include <algorithm>
using namespace std;
int main() {
string s = "Clare";
// toUpper
transform(s.begin(), s.end(), s.begin(), ::toupper);
// toLower
//transform(s.begin(),s.end(),s.begin(), ::tolower);
cout << s << endl;
}
C
1
2
3
4
5
6
7
8
9
10
#include <stdio.h>
#include <ctype.h>
int main() {
char s[] = "Clare";
int i = -1;
while(s[i++])
s[i] = toupper(s[i]);
// s[i] = tolower(s[i]);
puts(s);
}
OK ,代码就是这样啦。
声明:本站所有文章 ,如无特殊说明或标注 ,均为本站原创发布 。任何个人或组织 ,在未征得本站同意时,禁止复制 、盗用 、采集、发布本站内容到任何网站 、书籍等各类媒体平台 。如若本站内容侵犯了原著者的合法权益 ,可联系我们进行处理 。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!