C++中输入的问题

[复制链接]
查看11 | 回复3 | 2013-6-27 10:53:45 | 显示全部楼层 |阅读模式
cin.get(name,10); 这个会在输入缓冲区留下一个回车 那么后面的getline读到回车就认为输入结束在getline之前清空输入缓冲就行:#include using namespace std;int main(){char name[10];cin.get(name,10);//会在缓冲区留下一个回车符cout<<name<<endl;cin.sync();//清空输入缓冲区cin.getline(name,10);//此处为什么没有执行?cout<<name<<endl;return 0;}...
回复

使用道具 举报

千问 | 2013-6-27 10:53:45 | 显示全部楼层
因为你没清空缓冲区,后面的getline读到的是你最后输入的回车,改成这样就行了#include using namespace std;int main(){char name[10];cin.get(name,10);cout<<name<<endl;cin.clear();// 清空缓冲区cin.sync();ci...
回复

使用道具 举报

千问 | 2013-6-27 10:53:45 | 显示全部楼层
cin.get(name,10);这是错的,cin.get函数只是给字符变量赋值的,它的参数只有一个,字符变量名,例如 char name;cin.get(name);...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行