C表達式((void (*)(void))0();

C表達式((void (*)(void))0();

通過一步步來講解:
沒有參數和不返回值

void f(void)

定義一個指針沒有參數和返回值

void (*p)(void)

定義一個僅有類型的指針

(void(*))(void)

定義一個強轉類型(類型定義在括號內,跟着一個值)

(void (*)(void))0

到目前爲止我們定義了一個由0強轉成一個指向函數且返回值。

這個轉換時一個指針到函數的類型。

(your expression here)(arguments to the function)

以0位值,轉換成指針指向函數(沒有參數,沒有返回值),之後在調用。

((void (*)(void))0)(/*no  args*/);
發佈了57 篇原創文章 · 獲贊 48 · 訪問量 15萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章