一个简单的2及试题

来源:百度知道 编辑:UC知道 时间:2024/09/21 02:46:10
int x=5,d;
d=(++x)+(++x)+(++x);
printf("%d",d);
输出结果为什么啊?
结果是24 ,是为什么啊

计算时程序从左到右扫描
当扫描到第一个(++x)时x先加一,此时x里面存储的内容为6,接着扫描第二个(++x),x再加一,此时x里面存储的内容变为7(前一项也变成了7),最后扫描第三个(++x),此时x里面存储的内容变为8(前两项也都变成了8),扫描完后三项内容都变成了8(同为x里面存储的内容),然后相加,结果是24