找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

求大神看看這單片機程序哪里出錯了,找不出原因

查看數(shù): 1203 | 評論數(shù): 4 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發(fā)布時間: 2023-4-11 21:44

正文摘要:

寫了一個電機控制程序,需要有急停,當急停按鍵按下時,電機立刻停止工作。用break結(jié)束循環(huán),結(jié)果程序判斷出錯。麻煩大神看看,究竟哪里有問題?

回復

ID:1071489 發(fā)表于 2023-4-14 15:28
break語句通常用在循環(huán)語句和開關語句中。
當break用于開關語句switch中時,可使程序跳出switch而執(zhí)行switch以后的語句;如果沒有break語句,則會從滿足條件的地方開始執(zhí)行,直到switch結(jié)構(gòu)結(jié)束。
當break語句用于do-while、for、while循環(huán)語句中時,可使程序終止循環(huán)。
執(zhí)行循環(huán)后面的語句,通常break語句總是與if語句聯(lián)在一起。即滿足條件時便跳出循環(huán)。

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

ID:230500 發(fā)表于 2023-4-12 07:47
brea是關鍵詞,不是你這樣用的 , 你還需要閱讀以下內(nèi)容學習一下,
break語句通常用在循環(huán)語句和開關語句中。當break用于開關語句switch中時,可使程序跳出switch而執(zhí)行switch以后的語句;如果沒有break語句,則會從滿足條件的地方(即與switch(表達式)括號中表達式匹配的case)開始執(zhí)行,直到switch結(jié)構(gòu)結(jié)束。
當break語句用于do-while、for、while循環(huán)語句中時,可使程序終止循環(huán)。而執(zhí)行循環(huán)后面的語句,通常break語句總是與if語句聯(lián)在一起。即滿足條件時便跳出循環(huán)。
例:
main()
{
    int i=0;
    char c;
    while(1) /*設置循環(huán)*/
    {
        c='\0'; /*變量賦初值*/
        while(c!=13&&c!=27) /*鍵盤接收字符直到按回車或Esc鍵*/
        {
            c=getch();
            printf("%c\n",c);
        }
        if(c==27)
        break; /*判斷若按Esc鍵則退出循環(huán)*/
        i++;
        printf("The No. is %d\n",i);
    }
    printf("The end");
}
注意:
1. break語句對if-else的條件語句不起作用。
2. 在多層循環(huán)中,一個break語句只向外跳一層。
ID:883242 發(fā)表于 2023-4-12 00:16
break不能直接用于if,除非if屬于循環(huán)內(nèi)部的一個子句。

更離譜的是你以為寫了個break語句電機就能break???

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

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

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