我无法理解这段代码的作用:
#include <iostream>
using namespace std;
int main()
{
int x = 0, y = 0;
if (x++ && y++)
y += 2;
cout << x + y << endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
C++的输出为1.但我认为它应该是2?
为什么?因为在if语句的()中,我认为应该只检查它是否为真/假,所以它不会递增/递减任何整数.因为默认情况下这是真的,它会增加y为2?输出应该是0 + 2 = 2,但它只输出1?
| 归档时间: |
|
| 查看次数: |
1586 次 |
| 最近记录: |