我通過引用將結構傳遞給函數,因爲我想修改函數內部的結構。但是,編譯器在「++ kpad.pin_chars;」處不斷給我提供「Error C1421:Undefined class/struct/union」。我錯過了什麼?這裏是我的測試代碼:如何修改通過引用傳遞的結構?
struct Keypad{
int pin_chars;
};
void check_keypad(struct Keypad *kpad);
void main(void){
struct Keypad kpad;
kpad.pin_chars = 0;
check_keypad(&kpad);
}
void check_keypad(struct Keypad *kpad){
++kpad.pin_chars;
}
在功能check_keypad,KPAD是一個指向結構,而不是結構本身 – Cloverr
既不確實支持C類也沒有提及。該錯誤消息不是來自C編譯器,而是來自C++。這是一種不同的語言,不要垃圾標籤!雖然C++支持引用,但您的代碼中沒有任何代碼;一個指針不是一個參考! – Olaf
從ym的評論,你讀了我不明白這個問題?請參加[導覽],看看有哪些評論和答案。也許你注意到下面的帖子是以「答案」爲標題,而不是評論。 – Olaf