
如图所示, 一个用普通整型变量运算,一个用整型数组运算,结果大相径庭。请问为什么?
多个++同一个变量,这个是未定义行为(undefined behavior),未定义行为的结果是不受保证的,甚至你换一个编译器,结果都可能不同
可以看一下对应的汇编代码,看编译器是怎么处理的
同一个表达式式中,对同一变量使用多个++操作,不同的编译器的处理时不一样的,不要这么写。++应分开放到不同表达式中
int a = (++k3);
int b = (++k3);
int c = (++k3);
Result_k3 = a+b+c;