发布网友 发布时间:2022-04-24 12:43
共4个回答
热心网友 时间:2023-10-13 05:05
优化掉了。热心网友 时间:2023-10-13 05:05
这句话不是没有执行,是因为每次执行后,开始循环,这个循环的开始阶段又将a的值复为,造成没有执行程序的假象,希望能对你有帮助!追问我用单步调试了,确实没有执行,如果num==14;走到num++后直接到num=0;这一句了。追答那就是被编译器优化掉了!!
热心网友 时间:2023-10-13 05:06
因为a=2在while循环里,一直一直都是a=2,所以把a=2这句放在while前面一行就行了热心网友 时间:2023-10-13 05:06
volatile uchar a ; //搞定!追问我知道,已经试过了,可以,可是不知道为什么追答主要是后面用不上,就被优化掉了!我常常用:
a=0;
a++; a--;
的办法来保证不被优化。