cin,cin.get(),cin.getline(),gets(),getline()的用法及其特点和遇到的一些情况

注意: 下面的各种方式都可接收开头为空格的字符或字符串。即空格在开头的话,“没有什么影响”。嗯,描述不太恰当。自行领会。

1. cin 的用法及特点: 假设 a为数组,size为数组大小。

特点:当输入的字符串中或结尾含有空格(注意:并非开头的空格。),则表示输入结束,停止读取字符串。但是空格及其空格后面的字符串也会进入到缓冲流中,当执行下一输入语句时,就会捕获到该字符串,这样就不需要再次输入,而是直接输出。

cin>>a;
cin.get(a,size);
cin.getline(a,size);

运行结果如下:
cin,cin.get(),cin.getline(),gets(),getline()的用法及其特点和遇到的一些情况
2. cin.get(): 该语句的作用是获取一个字符(空格也是字符)
cin.get(a,size): 该语句的作用是读取一行字符串(包括空格)

cin>>a;
cin.get();
char c=cin.get();				//获取单个字符
cin.get(a,size).get();		//可直接接get(),
cin.getline();

运行结果如下:
cin,cin.get(),cin.getline(),gets(),getline()的用法及其特点和遇到的一些情况
3. cin.getline(a,size): 读取字符串可读取空格并输出,图如上。
cin.getline(a,size,‘c’): 其中c为结束字符,遇到即止。

4. getline(cin,str): 读取字符串,可读取空格并输出,

需包含头文件  #include<string>
string str;
getline(cin,str);

5. gets(): 读取一个字符串,可读取空格并输出,需包含头文件 #include"string"
_注意:_在VS中需要添加后缀,即:gets_s().。。这是微软发明的安全函数,仅适用于VS。

需包含头文件    #include<string>
gets_s(a);

6. getchar():

读取一个字符,需包含头文件 #include <string>

char ch;
ch=getchar();
上一篇:cin.getline()和getline()函数


下一篇:getline跳过第一个输入字符c