全局变量与静态变量的区别与不同

如题所述

第1个回答  2013-12-30
全局变量与全局静态变量的区别:
(a)若程序由一个源文件构成时,全局变量与全局静态变量没有区别。
(b)若程序由多个源文件构成时,全局变量与全局静态变量不同:全局静态变量使得该变量成为定义该变量的源文件所独享,即:全局静态变量对组成该程序的其它源文件是无效的。
(c)具有外部链接的静态;可以在所有源文件里调用;除了本文件,其他文件可以通过extern的方式引用;追问

能否说的清析易懂一点,理解不了

追答

简单地说就是全局变量在整个工程文件内都有效;静态全局变量只在定义它的文件内有效。能理解么

追问

追答

说明d2这个变量只能在 void fa(inta)---printf这段程序中使用,d2=1。如果d2要在上面或者其他一段程序中使用就得重新定义一次,因为它是静态变量,理解么

追问

输出结果分别为2 2
3 4 对吗

相似回答