2015-09-18 33 views
0

我明天终于明确&卡住在这个问题。得到奇怪的答案关于预增值

假设(C++)

x = 1; 
cout << ++x + ++x; // this gives me equals to 6 ! 

是不是假设是5? (2 + 3) 我迷路了,任何帮助都会得到真正的赞赏。

回答

0

这就像:

the first ++x = 2 

so now x=2 
next ++x = 3 
now x=3 

so out = 3 + 3 = 6 

,因为你使用的是相同的变量,因此它将被应用到的X。

+0

但是我什么时候应该应用这种计算方法? –

+0

@KokSin,你需要考虑你使用的是相同的变量名,所以如果你在任何地方改变了x,它将适用于你在那个特定范围内使用相同的x的地方。 –

+0

如果你使用类似的东西,相同的结果会有不同的结果:++ x ++ ++ y –