1.标准库string类型
1.1 string对象的定义和初始化
string s1; //默认构造函数,s1为空串 string s2(s1); //将s2初始化为s1的一个副本 string s3("value"); //将s3初始化为一个字符串字面值副本 string s4(n,‘c‘); //将s4初始化为字符‘c‘的n个副本
1.2 string对象的读写
int main(){ string s; cin>>s; cout<<s<<endl; return 0; }
从标准输入读取string,并将读入的串存储在s中。要注意的是下面2点:
· 读取并忽略开头所有的空白字符(比如空格,换行符,制表符);
· 读取字符直至再次遇到空白字符,读取终止。
所以如果输入“ hello world ”,结果输出“hello”。
1.3 用 getline 读取整行文本
这个函数接受2个参数:一个输入流对象和一个string对象。
int main(){ string line; while(getline(cin,line)) cout<<line<<endl; return 0; }
要注意的是:
· getline不忽略开头的换行符,当我上来就输入一个换行符的时候,getline会认为我已经输了一行了,于是便停止读入并返回,所以如果第一个字符就是换行符,string参数就会被置为空string。
· 而getline遇到换行符返回,但是会把换行符从缓冲区内剔除掉,所以下次读出来的时候就没有换行符了。
待续...
时间: 2024-10-06 22:50:30