C++学习笔记1———getline()函数

      在C++中,可以用下面的方式来读取输入字符串:cin<< 。但是它只可以读取一个单词,不能读取含有空格的字符串。
        而 cin.getline与cin.get则可以读取一行字符串,但它们又有些不同:cin.getline会把后面的换行符读入并转换成空字符,而cin.get不会读取换行符。这两个函数都是用于字符串数组的。
        另外,对于用string定义的字符串,有另一个函数:getline(cin,stringname)
        但是,我在使用它的过程中发现了一个问题:当使用这个函数时,需要按两次回车键,程序才能继续下去,而且如果接下去又一次调用这个函数的话,将会出现第二个函数读取不到字符串的情况。
分析原因,我想是因为第一个回车键被读走了,所以要再按一下回车键才能继续执行,但是第二个函数却读取到了第二个回车符,于是认为字符串读完了。
        解决方法:在两个getline(cin,stringname)之间加一个不带参数的cin.get()就可以了,但是在显示屏幕上还是会出现空行。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值