全局靜態變量是幹什麼的

今天看見一個程序使用了全局靜態變量,很奇怪既然都全局了爲什麼還用靜態,搜了一下:


全局變量與全局靜態變量的區別: 
 (a)若程序由一個源文件構成時,全局變量與全局靜態變量沒有區別。 
 (b)若程序由多個源文件構成時,全局變量與全局靜態變量不同:全局靜態變量使得該變量成爲定義該變量的源文件所獨享,即:全局靜態變量對組成該程序的其它源文件是無效的。 
 (c)具有外部鏈接的靜態;可以在所有源文件裏調用;除了本文件,其他文件可以通過extern的方式引用;

靜態全局變量的作用: 
(a)不必擔心其它源文件使用相同變量名,彼此相互獨立。
(b)在某源文件中定義的靜態全局變量不能被其他源文件使用或修改。
 (c) 只能在本文件中使用!具有內部鏈接的靜態;不允許在其他文件裏調用;

來自:

http://zhidao.baidu.com/link?url=TViurCNlJIqp4zZf6etZjNBtUfB6p9lJZejoXuzefRbF0F3cVOBVLrlXIbZoaaSWeOFfP5Diu7MmMo33wCACs_

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章