我是一个完全的编程初学者,大约 2 天前才开始学习 C++。有一个奇怪的问题,我不太明白。
int main()
{
int value1;
int value2;
cin >> value1 >> value2;
value1 = (value1 > 5) ? value1++ : value1;
value2 = value2++;
cout << value1 << " " << value2 << endl;
}
好吧,让我们说 value1 = 6 和 value2 = 2。好吧,显示是 6 3。据我所知,后自增运算符将其操作数加一,但它所使用的当前表达式的值仍然是“un-增量”值,这对于 value2 的情况是有意义的。value2 被赋值给表达式“value2++”并且 value2++ 的值为 2,一旦它被赋值,++ 的效果就会发生,并将 value2 的值加 1。但是对于 value1 的情况呢?为什么在上面的代码中使用后自增运算符之后,wansnt value1 的值会自增?