谢谢ls!再举个例子:(很简单矩阵key扫描程序)
P1 = 0x0f; keybmp = P1;
a2= (keybmp & 0x0f)^0x0f;
switch(a2) .. ... ..
这里的a2的值不会随着端口P1变化而变化。造成switch语句正确选择!
刚才,我人为地在 a2= (keybmp & 0x0f)^0x0f;和switch(a2)语句之间增加一些赋值语句!
如:
a2= (keybmp & 0x0f)^0x0f;
a2=0x0f;
_nop_();
a2=a2++;
switch(a2)
编译之后(无错误、无警告),但是红色语句还是被跳过不执行!
奇怪了!
|