为什么我在struct static static print_abc(struct abc)之前得到错误的预期表达式;在主要功能?
struct abc{
int a;
int b;
int c;
};
static void print_abc(struct abc){
printf("&i &i &d",a,b,c);
}
int main(void){
static void print_abc(struct abc);
}
答案 0 :(得分:1)
关键字 static 是一个关键字,在尝试调用标有 static 的函数时无需添加。有关详细信息,请参阅this。
您也无法将结构隐式转换为其他数据类型。您正尝试在 print_abc 函数中执行此操作。您需要显式访问成员变量。
& i和& d不是插入整数的有效占位符。请改用%d,有关详细信息,请参阅this。
代码应为:
struct abc{
int a;
int b;
int c;
};
static void print_abc(struct abc){
printf("%d %d %d",abc.a,abc.b,abc.c);
}
int main(void){
void print_abc(struct abc);
}