阅读 83

string转化大小写(C++) | Vimer的程序世界

string转化大小写(C++) | Vimer的程序世界

string转化大小写(C++)

Published on 十一月 11, 2009


6,277

如何将一个字符串转换成大写或者小写?这是字符串匹配中经常需要做的事情,然而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,代码就是这样啦。


文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐