請看下面的代碼:
SomeStructure* SomeFunc();
#define kkData (*SomeFunc())
問題:kkData代表什么?
編輯:從第二行洗掉分號。
uj5u.com熱心網友回復:
該指令
#define kkData (*SomeFunc());
表示呼叫函式SomeFunc并取消參考指向從函式回傳的結構的指標。
例如,您可以在程式中撰寫
SomeStructure s = kkData
注意指令中的分號應該去掉。在這種情況下,程式中的代碼
SomeStructure s = kkData;
會更清楚。
uj5u.com熱心網友回復:
與所有#define指令一樣,只是在編譯之前kkData將替換為的文本。(*SomeFunc())它絕不是一個函式指標,只是一個用于從SomeFunc()一個單詞中獲取結果并取消參考它的宏。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/440245.html
下一篇:如何訪問void*字串的i元素?
