在目標c中聲明此結構時發生錯誤。目標c中的結構
struct stRs232Struct* pStruct;
pStruct->nMessageId = (int)uMessageId;
錯誤:提領指向不完全類型
在目標c中聲明此結構時發生錯誤。目標c中的結構
struct stRs232Struct* pStruct;
pStruct->nMessageId = (int)uMessageId;
錯誤:提領指向不完全類型
什麼是stRs232Struct?它是你自己的結構嗎?如果是,那麼你實際上應該在某個地方宣佈它。類似這樣的:
struct stRs232Struct {
int nMessageId;
};
...
struct stRs232Struct* pStruct;
pStruct->nMessageId = (int)uMessageId;
...
如果您已經聲明瞭它,那麼您應該檢查在使用之前是否包含與其定義對應的.h文件。
編譯器警告你它知道有一個類型,但它不知道該類型是怎麼樣的。您很可能在某處有前向聲明(struct stRs232Struct;
),但您尚未包含完整定義(struct stRs232Struct { ... };
)。
我已經包含頭文件。 – spandana 2011-05-05 11:24:16
@ron:結構聲明怎麼樣?你宣佈了嗎? – 2011-05-05 11:25:49