①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++中 cin、cin.get()、cin.getline()、cin.getchar()的区别的更多相关文章

  1. C++中cin.get(),cin.getline(),cin>>,gets(),cin.clear()使用总结

    1.cin.get()  实质:类istream所定义对象cin的重载成员函数 用于读取单字符  istream& get(char&)    int get(void) 用于读取字符 ...

  2. C++语言中cin cin.getline cin.get getline gets getchar 的用法实例

    #include <iostream> #include <string> using namespace std; //关于cin cin.getline cin.get g ...

  3. [C/C++] 输入函数getline(cin,str) 与cin.getline(str,int)区别

    cin.getline()函数是处理数组字符串的,其原型为cin.getline(char * , int),第一个参数为一个char指针,第二个参数为数组字符串长度. getline(cin,str ...

  4. cin,get,getline

    一.cin 1.cin使用空白(空格.制表符和换行符)来确定字符串结束的位置,并且对于换行符,cin会把换行符留在输入队列.cin读取字符串放到数组中,并自动在结尾添加空字符. 例如: ]; cin& ...

  5. cin.get(),cin.getline(),getline(),gets(),getchar()

    1.cin.get() (1).cin.get()-------提取单个字符,可以提取回车.空格 a=cin.get(); (2) 同(1)---------------提取单个字符,可以提取回车.空 ...

  6. nyoj 273-字母小游戏 (getline(cin, string))

    273-字母小游戏 内存限制:64MB 时间限制:1000ms 特判: No 通过数:16 提交数:24 难度:0 题目描述: 给你一个乱序的字符串,里面包含有小写字母(a--z)以及一些特殊符号,请 ...

  7. PAT 甲级 1050 String Subtraction (20 分) (简单送分,getline(cin,s)的使用)

    1050 String Subtraction (20 分)   Given two strings S​1​​ and S​2​​, S=S​1​​−S​2​​ is defined to be t ...

  8. 20140923 cin.get() getline cin

    #include<iostream> #include<string> using namespace std; int main() {     string title; ...

  9. P1055 ISBN号码(getline(cin,s); printf("%s",str); )

    题目描述 每一本正式出版的图书都有一个 ISBN 号码与之对应,ISBN 码包括 9 位数字.1 位识别码和 3 位分隔符,其规定格式如 x-xxx-xxxxx-x,其中符号 - 就是分隔符(键盘上的 ...

随机推荐

  1. Mifare S50与Mifare S70

    转自http://blog.sina.com.cn/s/blog_9ed067ad0100zyjx.html Mifare S50和Mifare S70又常被称为Mifare Standard.Mif ...

  2. 信号量 sem_t 进程同步

    sem_t分为有名和无名.有名的sem_t通过sem_open来创建, 而无名的sem_t通过sem_init的初始化. 用有名的sem_t来进程间同步是件很容易的事情,百度上一搜很多想相关的例子. ...

  3. mongodump备份数据库

    1:mongodump -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -o 文件存在路径 如果没有用户谁,可以去掉-u和-p.如果导出本机的数据库,可以去掉-h.如果是默认端 ...

  4. 使用thumbnailator 时部分图片抛异常

    net.coobird.thumbnailator.tasks.UnsupportedFormatException: No suitable ImageReader found for source ...

  5. 电源VCC、VSS、VDD、VEE、VPP、Vddf标号的区别

    一.解释VCC:C=circuit表示电路的意思,即接入电路的电压: VDD:D=device表示器件的意思,即器件内部的工作电压:VEE:发射极电源电压,EmitterVoltage,一般用于ECL ...

  6. VisualSVN Server仓库迁移到Linux(包含所有版本, 权限,用户信息)

    公司开发服务器从Windows换成CentOS,所以要把原服务都转移到Linux下,MySQL.SMB的迁移都很顺利,但是SVN的转移却遇到了些问题,花费了三天时间,走了不少弯路,现在总算解决了SVN ...

  7. linux使用mount挂载iso文件

    mount -t iso9660 -o loop /home/user/XXX.iso /mnt/iso

  8. 如何用命令将本地项目上传到git

    1.(先进入项目文件夹)通过命令 git init 把这个目录变成git可以管理的仓库 git init 2.把文件添加到版本库中,使用命令 git add .添加到暂存区里面去,不要忘记后面的小数点 ...

  9. IOS--跳转方式两种

    带导航栏的Push跳转: FloatPassViewController *floatpass = [self.storyboard instantiateViewControllerWithIden ...

  10. Java内部类实现伪方法级多线程

    最近碰到一个问题,就是用户在填写相关信息提交后,后台需要将一些文件同步到另外一台服务器,而这个时候,由于用的是spring的框架,导致前端页面需要等待文件同步完成,才能弹出提示信息.相信大家在很多时候 ...