比如: int a,b;
a=0x1234;
b=a>>8;
我用keil调了,显示 a赋值后是0x0134,b即使0x12 ,很是不理解,
如果
int a,b;
a=0x1234;
b=a>>8;
a=a+1; 就正常
可能是优化的原因
因为你的a在后面没有操作的话,编译器在预处理的时候,将a就直接忽略了,而直接得出了b的值
你看到的那个a可能就是一个随机数
你可以把优化等级设置为0试试