【每天学一点】C++基础03

来源:互联网 发布:淘宝买电脑主机 编辑:程序博客网 时间:2024/06/06 12:53

  明天早上8点就要出差,而且似乎说晚上可能回不来……这好烦啊,一天又要浪费掉了,昨天晚上看了些面经,发现我真的差了好多。然后看了点leetcode,似乎说很有用啊。等过几天去好好看下,还有一星期要考6级,到现在都没过,感觉好难。看了点阅读今天。


string
当把string对象和字符字面值混在一条语句中时,必须确保每个运算符的两侧至少有个是string

string s1="hello";string s2=s1+"world"; //正确,把一个string与一个字面值相加string s3="hello"+"world"+s1  //错误,字面值不能直接相加

处理单字符

//cctype头文件isalnum(c)  //当c是字母或数字时为真isalpha(c)  //当c是字母时为真iscntrl(c)  //当c是控制字符时为真isdigit(c)  //当c是数字时为真isgraph(c)  //当c不是空格但可以打印时为真islower(c)  //当c是小写字母时为真isprint(c)  //当c是可打印字符时为真(c是空格或c具有可视形式)ispunct(c)  //当c是标点符号时为真isspace(c)  //当c是空白时为真(空格,横向制表,纵向制表,回车,换行,进纸)isupper(c)  //当c是大写字母时为真isxdigit(c)  //当c是十六进制数字时为真tolower(c)  //当c是大写字母输出对应小写字母,否则原样输出toupper(c)  //当c是小写字母输出对应大写字母,否则原样输出 //编程测试了一下#include<iostream>#include<cctype>using namespace std;void main(){    char s[4] = { 'A', 'B', 'b', 'A'};    char s1[4] = { 0 };    for (int i = 0; i < 4; i++){        s1[i] = tolower(s[i]);        cout << s1[i] << endl;    }    getchar();}

输出结果为:
a
b
b
a

可以实现的样子。

范围for:for(定义一个变量,访问序列中基础元素 : 表示一个序列)
decltype :返回操作数的数据类型

//输出标点个数    string s = "hi,i am reimu!!";    int count = 0;    for (auto a:s) //变量a会迭代访问s的每个元素,每次迭代后a会被初始化为s的下一个元素    if (ispunct(a))        ++count;    cout << count << endl;    getchar();
0 0
原创粉丝点击