初级C51问题
各位前辈,如图这个程序,我偶然发现将while(1)去掉,花括号内的前两条语句被跳过,直接执行了最后一条语句。这是怎么回事呢。 如果将while(1)加上,所有语句正常执行。初学不知道怎么回事 把优化等级改为0应该就不会被优化掉了 21cnsound 发表于 2024-9-14 16:56把优化等级改为0应该就不会被优化掉了
感谢!我试试 zhudean11 发表于 2024-9-14 16:58
感谢!我试试
就是优化等级的问题,改成0就好了,谢谢! 注释掉会死机的,主程序中While(1)必须有 小飞侠 发表于 2024-9-15 16:42
注释掉会死机的,主程序中While(1)必须有
注释掉但把优化等级改成0,仿真也没问题,我原来写的是while(1);在最后,发现前面执行的不对,丢了两条语句。 zhudean11 发表于 2024-9-16 08:03
注释掉但把优化等级改成0,仿真也没问题,我原来写的是while(1);在最后,发现前面执行的不对,丢了两 ...
是的while(1);转成汇编应该就是END语句,否则程序就跑飞了。 . 不要while(1)?骚操作!{:4_245:}
页:
[1]
2