久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4619|回復: 2
收起左側

KEIL編程軟件中,void函數中的return使用問題,求師傅們解答

[復制鏈接]
ID:479916 發表于 2019-3-28 19:55 | 顯示全部樓層 |閱讀模式
     我在用keil u4寫單片機程序的時候,遇到如下情況(只貼了整個程序的一部分):
//串口發送函數
void UartDriver()
{        
        if(flagFrame)
        {
                flagFrame=0;
                UartReceive();
                if(buf[0]!=0x01)                    //地址不相符,直接跳出,buf[0]字節代表地址                        
                {
                        return;
                }
                switch(buf[1])
                {
                        case 0x12:PowSta=buf[1];break;
                        case 0x13:PowSta=buf[1];break;
                        default:break;
                }
        
                ScanKey();
                KeyCode();
                UartSend();                                                               
        }
}

如果程序寫成上述形式,用串口助手調試,對從機發0x01+數據,2個字節,程序不能對外發送數據(程序為從機程序),但是如下改下如下:
//串口發送函數
void UartDriver()
{        
        if(flagFrame)
        {
                flagFrame=0;
                UartReceive();
                if(buf[0]==0x01)                    //地址不相符,直接跳出,buf[0]字節代表地址                        
                {        
                     switch(buf[1])
                    {
                        case 0x12:PowSta=buf[1];break;
                        case 0x13:PowSta=buf[1];break;
                        default:break;
                    }
                }
                ScanKey();
                KeyCode();
                UartSend();                                                               
        }
}

采用同樣的方法,則可以對外發出數據,搞不明白為什么,求哪位大俠能給解答一下,十分感謝!
回復

使用道具 舉報

ID:416287 發表于 2019-3-28 20:49 | 顯示全部樓層
return:rereturn的剛猛程度大于break,它使程序直接跳出整個函數,即函數遇到它后就停止一切執行了。后面的程序就執行不了,你可以去看一下return break continue的區別。
回復

使用道具 舉報

ID:479916 發表于 2019-3-29 07:52 | 顯示全部樓層
奮斗的小白熊 發表于 2019-3-28 20:49
return:rereturn的剛猛程度大于break,它使程序直接跳出整個函數,即函數遇到它后就停止一切執行了。后面 ...

在上述含有return的程序中,如果return執行的話,應該是跳出整個UartDriver函數,是嗎?這正是我想達到的目的.
回復

使用道具 舉報

ID:365802 發表于 2019-3-29 09:57
看帖子的同時自己也學習.
continue: 結束本次循環. 無參數
break:      結束本層循環, 可加參數(層數), 默認1, 如果為2, 則表示跳出兩層循環.
return:    結束本方法(函數), 可加參數, 參數即為函數返回值.


資料來自: https://www.cnblogs.com/yangdabao/p/6172210.html

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 男女又爽又黄视频 | 日本不卡一区二区三区在线观看 | 亚洲不卡av在线 | 久久1区 | 亚洲国产精品成人综合久久久 | 在线观看av网站 | 久久99国产精品久久99果冻传媒 | 武道仙尊动漫在线观看 | 亚洲国产成人在线 | 日韩精品一区二区三区在线播放 | 国产精品视频一区二区三区四区国 | 99久久久久久99国产精品免 | 成人免费淫片aa视频免费 | 欧美日日 | 91精品久久久久久久久久入口 | 日本精品一区二区三区视频 | 欧美片网站免费 | 日韩一区二区三区在线观看视频 | 91精品国产一区 | 免费国产精品久久久久久 | 黄色在线观看网址 | 久久一二| 国产精品小视频在线观看 | 黄色综合 | 国产男女猛烈无遮掩视频免费网站 | 1204国产成人精品视频 | pacopacomama在线 | 国产一区www | 精品免费| 精品一区二区三区在线观看国产 | 国产一区二区三区久久久久久久久 | 午夜视频在线观看视频 | 国产精品福利在线 | 午夜精品一区二区三区在线视 | 亚州中文字幕 | 日日操夜夜操视频 | 亚洲综合色视频在线观看 | 蜜桃毛片 | 国产91黄色 | 精品久久久久久久人人人人传媒 | 一区二区三区四区在线视频 |