每天一个小技巧
问题:int i = 1; (++i)+(++i) 为什么等于 6 ?
源码:
#include <stdio.h>
int main(void)
{
int i = 1;
printf("%d\n",(++i) +(++i));
return 0;
}
执行:
weiqifa@bsp-ubuntu1804:~/c/undif$ gcc g.c && ./a.out
6
weiqifa@bsp-ubuntu1804:~/c/undif$
执行的顺序是这样子的:
int i = 1;
++i ;//i = 2
++i ;//i = 3
i + i ; //输出6