Nic*_*ick -5 c++ prefix-operator postfix-operator
我面临着一个关于postfix和前缀运算符的经典考试问题,前缀是我无法理解的.考虑以下:
#define MAX( a, b ) ( a > b ) ? (a) : (b)
int main()
{
int x = 2, y = 2;
if( MAX( ++x, y ) == x )
{
printf( " %d is greater than %d ", x, y );
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
考试问题要求提供该课程的输出.对我来说,它将是"3大于2"但实际输出是"4大于2"
我理解post和前缀是如何工作的(或者至少我是这么认为的)但是我不知道变量如何递增两次.对此有何解释?
| 归档时间: |
|
| 查看次数: |
193 次 |
| 最近记录: |