[英]I don't understand `cin` works in c++
我是 C++ 新手,我想了解以下代码如何生成输出?
int main(){
int a;
char b;
cin>>a;
cin>>b;
cout<<a<<b;
}
我为a
和 输入123
,
为b
。 但是怎么行cout<<a<<b
给出123,
输出123,
?
在cin>>a>>b
输入123时, a
为整数,c++开始找整数。 它检测到 123 但,
不是整数,因此cin
无法检测到这一点。 当cin
失败时,它会转到下一个命令,下一个命令是读取字符b
并读取,
。 我希望这可以帮到你!
发生这种情况是因为您有两种不同的数据类型声明为“a”是“int”类型,而“b”是“char”类型,而且 C++ 将“123”作为单个 int 输入。 希望这可以帮助。 快速修复:避免在 int 之后输入字符,因为当您按下返回(回车键)时,字符被输入到它的 ascii 值。 代码片段:
int a;
char b;
cin>>a;
cout<<a<<endl;
cin>>b;
cout<<b<<endl;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.