首页 > 代码库 > C++自学笔记_标准库类型_《C++ Primer》

C++自学笔记_标准库类型_《C++ Primer》

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遇到换行符返回,但是会把换行符从缓冲区内剔除掉,所以下次读出来的时候就没有换行符了。

 

待续...

 

 

C++自学笔记_标准库类型_《C++ Primer》