当编译一些简单的东西时
inline int test() { return 3; }
int main()
{
test();
return 0;
}
,gcc -c test.c
一切顺利。如果-ansi
添加了关键字, gcc -ansi -c test.c
, 则会收到错误消息
test.c:1:8: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘int’
即使明确选择了 C99 标准也是如此,gcc -std=c99 -ansi -c test.c
.
这是什么原因,是否有推荐的修复方法?