TEMP FAILURE RETRY巨集定義

2021-10-04 04:16:19 字數 444 閱讀 3936

今天看原始碼,有個temp_failure_retry巨集定義一時沒看明白,現在想想有點好玩,原來是換個馬甲就不認識了哈哈哈哈

/* 原始碼 */

#define temp_failure_retry(expression) \

(__extension__\

()\/* 這個時候我沒看明白do __result 這是在幹啥,do是個型別嗎,其實加個括號,就明白了。是最基礎的do... while(0)的用法,簡寫了而已 */

/* 修改下加個大括號,更清楚了 */

#define temp_failure_retry(expression) \

(__extension__\

(\while(__result == -1l&& errno == eintr);\

__result;})\

核心中likely和unlikely巨集定義

在核心 中經常會看到unlikely和likely的蹤影。他們實際上是定義在 linux compiler.h 中的兩個巨集。define likely x builtin expect x 1 define unlikely x builtin expect x 0 這裡的 built expec...

CDEFINES用於定義C語言使用的巨集定義

cdefines用於定義c語言使用的巨集定義 系統定義的環境變數是沒法在c語言和組合語言中起作用的,如果非要這樣做 可以按照以下的步驟 1 在bsp根目錄中修改 bat 檔案,add set is lcd 240x320 1 2 在bsp根目錄中修改sources.cmn 檔案,add if is ...

Win Unix Mac 等多種系統平台的巨集定義

分享一下我老師大神的人工智慧教程。零基礎!通俗易懂!風趣幽默!還帶黃段子!希望你也加入到我們人工智慧的隊伍中來!最近正在學習c 程式從 windows 平台向 unix 平台移植,參考了 qt 的巨集定義檔案 win unix mac 等多種系統平台的巨集定義,平台移植時可做參考 拓展參考 qglo...