【发布时间】:2017-11-01 07:02:44
【问题描述】:
请参考下面的程序。我收到以下编译器警告。
bash-3.2$ gcc -Wall test1.c test1.c:6:警告:数据定义没有类型或存储类 test1.c:6:警告:在声明“j”时,类型默认为“int”
通常在函数外部写入运行时操作时会引发此警告。所以我质疑为什么在全局范围内,“int j; j=20”会引发警告,而“int i = 10”不会?
#include <stdio.h>
int i = 10;
int j;
j=20;
int
main(void)
{
int k;
k = 30;
printf("%d %d %d\n", i, j, k);
return 0;
}
【问题讨论】:
-
你读到最后的警告了吗?
-
@DeiDei:我现在看到了。 “警告:在‘j’的声明中,类型默认为‘int’”实际上是在告诉 j=20 是一个声明。谢谢。
标签: c