变量的定义与声明、初始化。
两个文件中声明同名字的int型变量,不包含,加或不加extern。
内存:全局初始化区,全局未初始化区。初始化的放在data段,未初始化的放在bss段(初始化为0的也可能放在bss段)
/* ------------ cc -c file.c -------------------------------- */
int i; /* 全局变量非初始化赋值,默认为0,内存为0 */
i = 100; /* warning: data definition has no type or storage class [enabled by default]
* 这里说:数据定义没有类型和存储类
* 说明上面int i;只是声明.而且全局不能在函数外面赋值,只能在声明的时候初始化
*/
/* ---------------------------------------------------------- */
int i;
int main()
{
i = 100; /* 没有任何警告和错误 */
return 0;
}
/* ---------------------------------------------------------- */