局部变量无论你赋值不赋值,都称为定义,以下情况会报错:
int main()
{
int a;
int a;
}
全局变量声明+赋值=定义,以下两种情况是声明是可以的,但是第二种要注意跨文件使用时,产生的错误(全局变量可以跨文件使用,但是static 全局变量是只能在一个c文件里面可以访问的);
int a;
int a;
void main()
{}
int a;
int a=10;
void main()
{}
但是,以下这种情况是不允许的,会报错,重复定义
int a=10;
int a=10;
void main()
{}