结构错误之前的C期望表达式

时间:2015-11-17 13:19:28

标签: c struct

为什么我在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);
}

1 个答案:

答案 0 :(得分:1)

1

关键字 static 是一个关键字,在尝试调用标有 static 的函数时无需添加。有关详细信息,请参阅this

2

您也无法将结构隐式转换为其他数据类型。您正尝试在 print_abc 函数中执行此操作。您需要显式访问成员变量。

3

使用 printf 函数时,

& 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);
}