C变量声明和定义的区别 ?问题2:如果一个外部变量在多个源程序中定义却未指定初始值?某些系统可能会接受,例如VC6.0同样的程序在VC++无法编译通过。?如果要在所有的C语言实现中避免上述问题,惟一的解决办法就是每个外部变量只定义一次。问题3:同一变量名在不同文件中声明为不同的类型?需要程序员自己检查。解决上述问题,只需接受一个简单的规则:每个外部变量只在一个头文件中声明,需要用到外部变量的地方都应该包括这个头文件,特别指出,定义该外部变量的模块也应该包括这个头文件。