c 作用域 链接域 存储时期

变量:

       作用域:程序中该表示可被访问的区域。包括,代码块作用域和文件作用域。

                  代码块作用域:在代码块中定义的变量,从该变量被定义的地方到包含该定义的代码块的末尾该变量均可见。

       文件作用域:一个在所有函数之外定义的变量具有文件作用域。从它定义处到包含该定义的文件结尾处都是可见的。

   链接:外部链接,内部链接,空链接

      空链接:代码块作用域的变量具有空链接。

      外部链接:文件作用域的变量默认情况下具有外部链接。(int giants =5 ; //文件作用域,外部链接)

      内部链接:文件作用域的变量用static指定时具有内部链接。(static int dodgers = 3;//文件作用域,内部链接)

   存储时期:静态存储时期,动态存储时期

               静态存储时期:在程序执行期间一直存在。文件作用域的变量具有静态存储时期。即静态变量(注意:对于文件作用域的变量,static与存储时期无关,与内部链接还是外部链接            有关;对于代码块作用域的变量,static 指定存储时期是静态的).其初始化语句在程序执行前执行,且只会执行一次!!

     动态存储时期:在程序进入定义这些变量的代码块时,将为这些变量分配内存。代码块作用的变量默认(auto)具有动态存储时期,也可用static指定为静态存储时期。

 

       外部变量:具有外部链接的变量。

   具有内部链接的静态变量:static int stayhome = 1;

     

     

posted @ 2012-11-30 11:33  追心  阅读(155)  评论(0编辑  收藏  举报