找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 25589|回復: 34
打印 上一主題 下一主題
收起左側(cè)

C語言怎么退出while(1)死循環(huán)?

  [復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:502151 發(fā)表于 2019-4-8 21:19 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
如題
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:507395 發(fā)表于 2019-4-8 21:55 | 只看該作者
break;
回復

使用道具 舉報

板凳
ID:409988 發(fā)表于 2019-4-8 22:22 | 只看該作者
while(1)死循環(huán)退不出
回復

使用道具 舉報

地板
ID:507428 發(fā)表于 2019-4-8 22:35 來自觸屏版 | 只看該作者
break;
回復

使用道具 舉報

5#
ID:503111 發(fā)表于 2019-4-8 22:56 | 只看該作者
你先設置一個變量m=-1,變量m通過外部控制,比如結(jié)束數(shù)據(jù)采集的按鍵令m=1,在while(1)循環(huán)中對m進行判斷,當m=1時通過break跳出循環(huán)。
回復

使用道具 舉報

6#
ID:503111 發(fā)表于 2019-4-8 22:57 | 只看該作者
你先設置一個變量m=-1,變量m通過外部控制,比如結(jié)束數(shù)據(jù)采集的按鍵令m=1,在while(1)循環(huán)中對m進行判斷,當m=1時通過break跳出循環(huán)。
BOOL g_bClose = False;

void SetClose(BOOL bClose) { g_bClose = bClose;}

int main()
{
   while(g_bClose)
   {
        //你的邏輯....
        Sleep(1);
   }
}
回復

使用道具 舉報

7#
ID:277550 發(fā)表于 2019-4-8 23:19 | 只看該作者
break


~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
回復

使用道具 舉報

8#
ID:164602 發(fā)表于 2019-4-9 07:56 | 只看該作者
用break啊
這條語句是無條件跳出循環(huán)的。不過你可以設置一個條件,條件滿足時,用這語句,就出來了
回復

使用道具 舉報

9#
ID:213173 發(fā)表于 2019-4-9 08:05 | 只看該作者
goto 語句
goto語句也稱為無條件轉(zhuǎn)移語句,其一般格式如下: goto 語句標號; 其中語句標號是按標識符規(guī)定書寫的符號, 放在某一語句行的前面,標號后加冒號(:)。語句標號起標識語句的作用,與goto 語句配合使用。
回復

使用道具 舉報

10#
ID:449525 發(fā)表于 2019-4-9 08:10 | 只看該作者
滿足while函數(shù)下的某個條件處理后,想跳出,break
回復

使用道具 舉報

11#
ID:426861 發(fā)表于 2019-4-9 08:56 | 只看該作者
為何想要退出?
回復

使用道具 舉報

12#
ID:119810 發(fā)表于 2019-4-9 09:05 | 只看該作者
樓上正解,可用break終止循環(huán)程序。在do-while、for、while循環(huán)語句,都可以應用。
回復

使用道具 舉報

13#
ID:507579 發(fā)表于 2019-4-9 09:45 | 只看該作者
將while(1)中的1改為一個變量,通過將這個變量的值變?yōu)?來跳出while()的循環(huán),也可以采用while(n--)的形式,循環(huán)n次后就會停止
回復

使用道具 舉報

14#
ID:369819 發(fā)表于 2019-4-9 10:00 | 只看該作者
都死循環(huán)了肯定是退不出來的,你要設置好循環(huán)完成條件或者設置退出條件,最好把代碼發(fā)上來。
回復

使用道具 舉報

15#
ID:503529 發(fā)表于 2019-4-9 10:02 | 只看該作者
1.break
2.a=1;
while(a)
{a--;}
3.goto
回復

使用道具 舉報

16#
ID:507605 發(fā)表于 2019-4-9 10:37 | 只看該作者
也可以通過指針跳到其他地址
回復

使用道具 舉報

17#
ID:451718 發(fā)表于 2019-4-9 14:59 | 只看該作者
15樓都給你概括完了。
不過作為單片機,還有一個很有特色的功能,就是中斷。 你可以在中斷中去做while循環(huán)以外的事情,然后一層層的嵌套。 等執(zhí)行完后,自動回到原點,不會讓程序跑飛。
回復

使用道具 舉報

18#
ID:388197 發(fā)表于 2019-4-9 18:44 | 只看該作者
看你想怎么跳了,一般寫上while(1)就是無條件死循環(huán),如果循環(huán)中碰到故障,可以利用中斷檢測出來,看門狗大概就是這個道理,不過看門狗一般是類似contiune的功能,要想起到break的功能則需要另外敲點代碼.
回復

使用道具 舉報

19#
ID:508161 發(fā)表于 2019-4-9 19:20 | 只看該作者
break;
回復

使用道具 舉報

20#
ID:508163 發(fā)表于 2019-4-9 19:20 | 只看該作者
return
回復

使用道具 舉報

21#
ID:320872 發(fā)表于 2019-4-9 19:34 | 只看該作者
break;
回復

使用道具 舉報

22#
ID:467503 發(fā)表于 2019-4-10 07:23 來自觸屏版 | 只看該作者
死循環(huán)就看門狗復位退出唄
回復

使用道具 舉報

23#
ID:52944 發(fā)表于 2019-4-10 09:19 | 只看該作者
可以使用while(變量)
回復

使用道具 舉報

24#
ID:508876 發(fā)表于 2019-4-10 16:15 | 只看該作者
while 會一直運行,用   條件 break;跳出來就行了
回復

使用道具 舉報

25#
ID:509044 發(fā)表于 2019-4-10 19:16 | 只看該作者
用break;
回復

使用道具 舉報

26#
ID:509103 發(fā)表于 2019-4-10 20:34 | 只看該作者
直接使用break就退出了
回復

使用道具 舉報

27#
ID:479009 發(fā)表于 2019-4-11 03:41 | 只看該作者
break;
goto;
return;
exit(0);
throw;//c++
回復

使用道具 舉報

28#
ID:230559 發(fā)表于 2019-4-11 10:27 | 只看該作者
軟件狗復位重來。
回復

使用道具 舉報

29#
ID:509901 發(fā)表于 2019-4-11 19:23 | 只看該作者
僅僅跳出while循環(huán)的話用break;要終止函數(shù)的話就用return。
回復

使用道具 舉報

30#
ID:509930 發(fā)表于 2019-4-11 20:20 | 只看該作者
這個循環(huán)應該退不出,把while(1)里的1給改了就能退出了吧
回復

使用道具 舉報

31#
ID:474606 發(fā)表于 2019-4-11 20:20 | 只看該作者
可以加入一個break語句結(jié)束while循環(huán)
回復

使用道具 舉報

32#
ID:509991 發(fā)表于 2019-4-11 20:59 | 只看該作者
滿足whlie條件后break就行了
回復

使用道具 舉報

33#
ID:510127 發(fā)表于 2019-4-12 00:24 | 只看該作者
break;

或者用if()goto
回復

使用道具 舉報

34#
ID:510141 發(fā)表于 2019-4-12 02:49 | 只看該作者
break; 跳出整個循環(huán)
回復

使用道具 舉報

35#
ID:510401 發(fā)表于 2019-4-12 12:40 | 只看該作者
break;                              
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表