我通过引用将结构传递给函数,因为我想修改函数内部的结构。但是,编译器在“++ 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