1.这次我们来探讨一下#include<sstream>和#include<cctype> sstream里面我们用stringstream来构造一个字符串流型数据
stringstream ss; string s; getline(cin,s); //把输入一行的内容放在字符串里要注意的一点是getline是逐行获取的,所以说当我们前面还有输入时即 这样是错误的:
int n; cin>>n; getline(cin,s);正确写法:
int n; getline(cin,s); n=atoi(s.c_str());利用强制类型转换,把字符串转成数字,atoi是char *->int c_str()是string->char * 接下来
ss.str(s); //把字符串放在字符串流中需要注意的是:ss里面会缓存之前存在的内容,所以说如果我们需要每次获取这一行的数据就需要把ss设置成局部变量
getline(cin,s); stringstream ss; ss.str(s);这样每次获取新一行数据ss都会更新成新一行数据 #include<cctype>
char ch;有三个东西挺好用的,虽然说原理是显然的 isalpha()判断是否为字母
isalpha(ch); //等价于 if(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')isdigit()判断是否为数字
isdigit(ch); //等价于 if(ch>='0'&&ch<='9')isalnum()判断是否为数字字母
isalnum(ch); //等价于 if(ch>='0'&&ch<='9'||ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')