但是编译过了,什么原因呢,这是只定义没赋初值的情况下,如果给第一个赋初值,第二个不赋初值也是可以编译过的,
这个程序是哪个程序,你的程序呢?
不允许重复定义,赋值和定义是两回事儿
a应该是定义吧,除了2个a都给赋值外,其他都是可以通过编译的
printf里面灰色的字实在是看不见
int a;int a;这么写是不行的。
int a;extern int a;int main(){a = 1;return 0;}这是可以的。