0
例如,如果写代码的语句:为什么cin不能识别回车键,就像cin.get一样?
char a[10];
char b[10];
cin>>a;
cin>>b;
cin>>b;
没有看到回车后输入被按下,例如键,您好
但是当改为cin>>b;
写cin.get(b, 10);
然后cin.get(b, 10);
读取输入以前的语句的键。
例如,如果写代码的语句:为什么cin不能识别回车键,就像cin.get一样?
char a[10];
char b[10];
cin>>a;
cin>>b;
cin>>b;
没有看到回车后输入被按下,例如键,您好
但是当改为cin>>b;
写cin.get(b, 10);
然后cin.get(b, 10);
读取输入以前的语句的键。
在这里假设a
和b
是char
的数组,因为否则您的问题没有意义。
get
是一个“未格式化”的输入函数,用于在输入流时读取输入。这就是它读取换行符的原因。
>>
是一个“格式化”的输入函数,用于以自然的方式读取特定类型的数据。具体而言,>>
与char
数组读取单个字,即不包含空白的字符序列。这就是为什么当它遇到新行时,它停止阅读,这是空格。
你的意思是“没有看到输入后按下的Enter键?”你的意思是它没有将光标移动到控制台中的新行? –
这甚至不应该编译。你是否认为这些数组是'char'? –
@SebastianRedl这是错字,对不起 – Sunrise