欧美在线专区-欧美在线伊人-欧美在线一区二区三区欧美-欧美在线一区二区三区-pornodoxxx中国妞-pornodoldoo欧美另类

HAL庫中do{...} while(0U)宏定義的作用和意義

[導讀]很多初學者都不知道這個“do{ ...} while(0U)”作用和意義,定義的作甚至覺得這樣寫的用和意義代碼復雜且沒意義。相信使用過STM32Cube HAL庫的定義的作朋友都知道,源碼里面有許多do{ ...} while(0U)的用和意義宏定義語句。今天講的定義的作主要知識點是:HAL庫中do{ ...} while(0U)作用和意義。


關注、用和意義星標公眾,定義的作不錯過精彩內容

作者:strongerHuang

HAL庫中do{...} while(0U)宏定義的作用和意義

微信公眾號:strongerHuang


1寫在前面

很多初學者都不知道這個“do{ ...} while(0U)”作用和意義,用和意義甚至覺得這樣寫的定義的作代碼復雜且沒意義。

相信使用過STM32Cube HAL庫的用和意義朋友都知道,源碼里面有許多do{ ...} while(0U)的定義的作宏定義語句。

今天講的用和意義主要知識點是:HAL庫中do{ ...} while(0U)作用和意義。

當然,定義的作do{ ...} while(0U)?不限于HAL庫中,用和意義適用于很多地方。定義的作


2

HAL庫中do{ } while(0U)宏定義

在HAL庫中,很多.h文件都有do{ ...} while(0U)這樣的宏定義,比如:在stm32f1xx_hal_rcc.h中,使能GPIO時鐘:


對比在LL庫中時鐘使能代碼,如下:


很多人只會覺得LL庫這種函數比較合理,而想不明白為什么HAL會使用這種“do{ ...} while(0U)”宏定義的語句。

下一章節重點講述一下這種“do{ ...} while(0U)”宏定義的作用和意義。


3

do{ ...} while(0U)宏定義的作用和意義
使用do{ ...} while(0U)這種方式其實有幾種重要作用,下面簡單說幾條:


1.編譯出錯

不使用do{ }while:


使用大括號,多一個分號:


使用do{ ...} while(0U):


大家對比以上幾種,你覺得哪一種合理?


2.避免goto跳轉語句帶來問題

不使用do{ }hwile(0):


使用do{ }hwile(0):


大家再對比以上兩種,發現了什么問題?


我這里也不再繼續舉例說明了,大家可以上網了解,其實還有很多重要意義和作用。


怎么說呢,點到為止,希望對你有啟發。


推薦閱讀:

MCU堆棧空間,你設置了多少?

為什么不建議使用DS-5開發STM32?

FreeRTOS如何減少RAM占用空間并加快執行速度


關注 微信公眾號『strongerHuang』,后臺回復“1024”查看更多內容,回復“加群”按規則加入技術交流群。


長按前往圖中包含的公眾號關注

免責聲明:本文內容由21ic獲得授權后發布,版權歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯系我們,謝謝!

Popular articles

主站蜘蛛池模板: 久久国内精品自在自线软件| 国产福利一区二区在线观看| 国产亚洲高清不卡在线观看| 性一交一乱一伦一| 久久er国产精品免费观看2| 毛片免费视频观看| 亚洲国产欧洲综合997久久| 免费的生活片| 香瓜七兄弟第二季| 成人爽a毛片在线视频| 美女羞羞视频免费网站| 久久电影精品| 7m凹凸精品分类大全免费| 欧美特黄色片| 国产69精品久久久久777| 亚洲国产三级在线观看| 波多野结衣变态夫妻| 国产大片免费天天看| 冬月枫亚洲高清在线观看| 国产gay小鲜肉| 美女奶口隐私免费视频网站| 99热99操99射| 美国式禁忌在完整有限中字| 四虎永久地址4hu2019| 国产小鲜肉男同志gay| 女人张开腿给人桶免费视频| 欧美伦理影院| 果冻传媒国产电影免费看| 四虎精品成人免费观看| 亚洲成人毛片| 国产在线视频一区二区三区| jizz日本在线观看| 日本大片免费一级| 国产乱码卡一卡2卡三卡四| 四虎免费永久在线播放| aaa一级黄色片| 在老公面前被| 日产精品1区至六区有限公司| 男生和女生一起差差的视频30分| 日本一卡2卡3卡4卡无卡免费 | 操女人电影|