以下是引用gahddd在2007-10-23 21:30:07的发言:
#include "stdio.h"
main()
{
int a=4,b;
b=(++a)+(++a)+(++a);
printf("%d\n",b);
}
这段程序在VC中得到结果为19,在TC中结果为21,在TC中的结果我能算出来,但在VC中得到19就不懂了。
忘哪位高手 知道的给个答案,谢谢。
19估计不可能,这个语句: b=(++a)+(++a)+(++a);
有两种解释:(1) "a"在实现自加之后,进行加法运算;(++优先于+)结果是21
(2)"a"在括号内自加同时参与后面运算;结果是18
[此贴子已经被作者于2007-10-26 9:29:57编辑过]