程序进while(1)出不来了,怎么办

程序进while(1)出不来了,怎么办,第1张

while是条件判断循环,而while(1)表示条件为真,一直循环,要想退出则可以在相应代码后面加上语句----break即可

格式:

while(1){

....

你的代码

....

break(需要跳出循环地方)

}

如:

int i=1

while(1){

i++

if(i==10){

break

}

}

while(1){}是死循环,同理while(1)也是死循环

这样可能会比较好理解,for(i=0i<10i

){}

循环了10次;for(i=0i<10i

)一样循环的了10次,只是后面这个没有执行语句,

while(!ri)

ri取反为真的时候执行,即ri为0的时候执行

这个也是死循环,如果你要跳出循环的话

for()

{

……

……

while(1)

{

.....

if(...)break

//这里当条件满足后,跳出whil循环,执行test这里的程序

.....

}

test.....

if(...)break

//同理,这里当条件满足后,跳出for循环,结束死循环,执行for外面的程序

}

这样说是否能理解?

这句话的字面意思是,让程序死循环,即永远停在while(1)这个位置上.

为什么要这么做呢?因为main函数是你的程序的全部,当main函数执行完退出后,其后果不可预知.注意是不可预知!因为你没有再写代码去处理main函数退出以后该干什么.这时,单片机可能会跑飞,进入一种不可预知的状态,此时,你在main里面所作的 *** 作结果(比如 *** 作数码管),可能会被破坏,从而影响实验结果的观察.


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11373185.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存