我得到内C.C89 - 错误:预期 ')' 之前, '*' 令牌
此错误错误:之前 '*' 标记
预期 ')',但不能跟踪它。
void print_struct(struct_alias *s) //error within this line
{
...
} //end of print method
我的问题是,当收到此错误的地方,错误干回到哪里?它是一个函数的问题,它可以是传入的内容的错误吗? 错误的范围是什么?
我得到内C.C89 - 错误:预期 ')' 之前, '*' 令牌
此错误错误:之前 '*' 标记
预期 ')',但不能跟踪它。
void print_struct(struct_alias *s) //error within this line
{
...
} //end of print method
我的问题是,当收到此错误的地方,错误干回到哪里?它是一个函数的问题,它可以是传入的内容的错误吗? 错误的范围是什么?
该错误表示在此翻译单元中未声明此类型为struct_alias
。
编译器无法识别名称struct_alias
作为类型名称。
对于代码编译,struct_alias
就必须声明为typedef
,而该声明必须是编译器可见当它看到的print_struct
定义。
(typedef名称是棘手实际上,他们成为暂时的用户定义的关键字,这就是为什么他们参与的错误会产生这样的混乱的错误信息。)
这不是专门针对C89;它同样适用于C90(与C89完全相同的语言),C99和C11。
我看着它和你的权利。它没有被声明为typedef。谢谢! – BDillan 2014-10-08 21:40:50
显示更多代码,以便我们可以帮助您更好!并且在哪个行号是错误? – Rizier123 2014-10-08 21:36:17
@ Rizier123:这个问题向我们展示了发生错误的行;看到评论。 – 2014-10-08 21:37:18