谁能解释这个代码?为什么显示 1
Who can explain this code ? Why it shows 1
这是如何工作的?
int a=5<=5;
cout<<a; // output : 1
谁能解释为什么输出是 1?
那是因为
-
<=
的优先级高于=
因此首先计算。 -
5 <= 5
返回一个布尔值,这是真的。 - 它被转换为一个整数,即 1。
- 然后 1 分配给
a
.
所以a
现在等于 1。
5<=5
是true
,当转换为整数时,1
.
将此值分配给a
然后1
保存该值。然后输出。
您可能想阅读 https://en.cppreference.com/w/cpp/language/operator_precedence
相关文章:
- 为什么在C的循环中使用printf的Rust代码不显示输出,而在C++的循环中显示std::cout
- 为什么我的程序不能显示斐波那契级数?
- 为什么C++总是显示十六进制内存地址,而不仅仅是整数?
- 为什么静态数组成员变量在调用对象的实例后不显示任何内容?
- 为什么当 vector 为空时会显示运行时错误?
- 为什么将指针重新分配给 1D 数组的 char 时显示错误,但 2D 数组工作正常?
- 为什么我的 cout 在输出中没有显示字符串?
- 为什么下面的Hello World程序在PowerShell上没有显示任何输出?同一程序在CMD上显示正确的输出
- 为什么strlen(s)与s的大小不同,为什么cout-char显示的是字符而不是数字
- 为什么在为其分配编号后无法显示我的字符串值?
- 为什么输出窗口上没有显示输出?
- 为什么C++在将浮点数转换为字符时没有显示缩小转换错误?
- 为什么C++显示错误的数字?
- 为什么显示错误:参数太少而无法正常工作
- C++/openCV - 为什么显示图像会产生 Linux 分割错误?(打开CV错误?
- 为什么显示密码而不是消息
- 谁能解释这个代码?为什么显示 1
- 为什么显示的颜色不是VTK中预期的颜色
- 为什么显示 - "cannot pass objects of non-trivially-copyable type"?
- 为什么显示"Received a connection from 0.0.0.0, port 0"?