代码改变世界

[整理]C语言中的static静态对象

2014-06-18 23:28  Benoly  阅读(352)  评论(0编辑  收藏  举报

1.说明外部对象(静态外部变量和静态函数)
    (1)static 用于说明外部变量或函数,使该对象的作用域限定为被编译原文件的剩余部分,即从对象说明开始到所在源文件的结束部分;
    (2)被static说明的外部对象对于其他的源文件是隐藏的,也就是说其他源文件无法访问得到;
    (3)不会和同一程序的其他源文件中的同名的外部对象发生命名冲突。


2.说明内部变量(静态内部变量)
    (1)和自动变量一样,作用域为某个特定的函数;
    (2)和自动变量不同的是,不管其所在的函数是否被调用,该静态内部变量一直存在,且不会像自动变量一样,随着函数的调用与退出而存在与消失。
    (3)一直占据存储空间。