我的頭定義了以下代碼:Ç - 前函數參數預期的聲明符或「...」
typedef uint8_t EnrollT(uint16_t test1, uint16_t test2);
typedef void ChangeT(uint64_t post1, uint8_t post2);
struct ClusterT * ClientAlloc(EnrollT *, ChangeT *);
我已經實現了這兩個功能,並在我的C文件傳遞那些ClientAlloc()作爲如下所示:
ClientAlloc(Enroll, Change);
但是,當我編譯源時,彈出錯誤。
expected declaration specifiers or ‘...’ before ‘enroll’
expected declaration specifiers or ‘...’ before ‘change’
有什麼我可能會在這裏錯過嗎?
對於EnrollT
和ChangeT
,我宣佈它在我的代碼:
uint8_t Enroll(uint16_t test1, uint16_t test2){...};
void Change(uint64_t post1, uint8_t post2){...};
對於ClienAlloc
:
struct ClusterT * ClientAlloc(Enroll, Change){... return something};
你怎麼申報'enroll'和'change'? –
刪除了我的答案,因爲雖然*可能*在某處忘記了分號,但沒有人能真正告訴這一小段代碼。請顯示一個完整的可證實的問題示例。 –
@MichaelWalz和Felix,我已經更新了我的問題。 – user3815726