c++中如何读入一个整数后再读入一个字符串

int n;chara[2000];
cin>>n;
cin.getline(a,1000);
我想要的是先读入整数,然后回车后再读入字符串,但是输入一个整数按回车后会直接结束,怎么解决这个问题

你这个问题是初学者遇到的问题。
这样解释吧:
你输入整数,按回车,实际上输入的是:
整数和换行符号(\n)。cin把整数读进了,但是换行符号没有读,因此使用cin.getline会读入\n。然后就直接结束了。
解决办法是把\n吃掉,哈哈,就是吃掉\n。
在cin.getline之前使用cin.get();吃掉\n。就实现你想要的结果了。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-05-01
scanf(%d,num);输入一个整数
scanf(%s,str);输入一个字符串追问

要用IO流输入

本回答被网友采纳
相似回答