c++中 cincin.get()cin.getline()cin.getchar()的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++中 cincin.get()cin.getline()cin.getchar()的区别相关的知识,希望对你有一定的参考价值。

①cin>>:无法接收空格、Tap键且以空格、Tap键、回车符为分隔符;

②cin.get( ):可以接收空格、Tap键且以回车符为结束符;

  一:可输入单个字符

  格式:

  char ch;

  ch=cin.get( );/cin.get(ch);

  二:可输入字符串

  格式:

  cin.get(字符数组名,元素个数)

③getline( ):可接收空格、Tap键且以回车符为结束符;

格式:

string str;//字符串变量

getline(cin,str);

④cin.getline( ):可接收空格、Tapa键且以回车符结束;

格式:cin.getline(字符数组名,元素个数)

char m[20];

cin.getline(m,20);

③和④类似,单数getline( )属于string流类,而cin.getline( )属于istream流类,是不一样的函数。

 

5、对输入一个空行(即直接回车)的处理

  get(str,Size):str将得到‘\0‘,并设置cin实效位,关闭输入,但回车依然留在输入缓冲区中,因此如果我们用clear()重置cin,其下一个读取输入的操作将捕获‘\n‘;
  getline(str,Size):str将得到‘\0‘,并将‘\n‘删除掉,不置实效位,不关闭输入。所以对于cin.getline来说空行是合法的输入,且不会影响下面的输入处理。

 

C语言中的gets( )和getchar( )

①gets(字符数组名)用于接收字符串,可包括空格、Tap键且以回车符结束;

②getchar(字符变量名)用于接收单个字符且以回车符结束,一般需要两个。前一个接收字符,后一个接收回车符。

③putchar(字符变量名或整常数)

以上是关于c++中 cincin.get()cin.getline()cin.getchar()的区别的主要内容,如果未能解决你的问题,请参考以下文章

C++中cin、cout的一些特殊用法

转 cincin.get()cin.getline()getline()gets()等函数的用法

C++课堂练习一

在 C++ 中制作“对象”| C++ | JS [关闭]

在 C++ 中使用 C# 接口或在 C# 中使用 C++ 接口

C++ 如何在 C++ 中覆盖文本文件中的数据?