C语言规定对scanf和printf这两个函数可以省去对其头文件的包含命令。
对于局部变量的定义和说明,可以不加区分。而对于外部变量则不然,外部变量的定义和外部变量的说明并不是一回事。外部变量定义必须在所有的函数之外,且只能定义一次。其一般形式为: [extern] 类型说明符 变量名,变量名… 其中方括号内的extern可以省去不写。
例如: int a,b; 等效于:extern int a,b;
而外部变量说明出现在要使用该外部变量的各个函数内. 在整个程序内,可能出现多次,外部变量说明的一般形式为: extern 类型说明符 变量名,变量名,…(注意必须有extern ) 外部变量在定义时就已分配了内存单元, 外部变量定义可作初始赋值,外部变量说明不能再赋初始值, 只是表明在函数内要使用某外部变量。
外部变量和全局变量是对同一类变量的两种不同角度的提法。全局变是是从它的作用域提出的,外部变量从它的存储方式提出的,表示了它的生存期。
当一个源程序由若干个源文件组成时, 在一个源文件中定义的外部变量在其它的源文件中也有效