• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            朗朗空間

            我知道并不是 所有鳥(niǎo)兒都飛翔

              C++博客 :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
              16 Posts :: 0 Stories :: 6 Comments :: 0 Trackbacks

            常用鏈接

            留言簿(1)

            我參與的團(tuán)隊(duì)

            搜索

            •  

            最新隨筆

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

            存儲(chǔ)類(lèi)、鏈接和內(nèi)存管理
            1.作用域
            作用域描述了程序中可以訪問(wèn)一個(gè)標(biāo)識(shí)符的一個(gè)或多個(gè)區(qū)域。
            一個(gè)C變量的作用域可以是代碼塊作用域、函數(shù)原型作用域或者文件作用域。
            代碼塊作用域
            一個(gè)代碼塊是包含在開(kāi)始花括號(hào)和對(duì)應(yīng)的結(jié)束花括號(hào)之內(nèi)的一段代碼。
            例如,整個(gè)函數(shù)體是一個(gè)代碼塊。
            一個(gè)函數(shù)內(nèi)的任一復(fù)合語(yǔ)句也是代碼塊。
            在代碼快中定義的變量具有代碼塊作用域(block scope),從該變量被定義的地方到包含該定義的代碼塊的末尾該變量均可見(jiàn)


            另外,函數(shù)的形式參數(shù)盡管在函數(shù)的開(kāi)始花括號(hào)前進(jìn)行定義,也同樣具有代碼塊作用域,并且屬于包含函數(shù)體的代碼塊。

            double blocky (double cleo)
            {
                
            double patrick = 0.0;
                
                
            return patrick;
            }

            在上面這個(gè)例子中,cleo和patrick都有知道結(jié)束花括號(hào)的代碼作用域。

            在一個(gè)內(nèi)部代碼塊中聲明的變量,其作用域只局限于該代碼塊:

            double blocky (double cleo)
            {
                
            double patrick = 0.0;
                
            int i;
                
            for (i=0; i < 10; i++)
                
            {
                    
            double q = cleo * i// q作用域的開(kāi)始
                    ……
                    
            patrick *= q;
                
            }//q作用域的結(jié)束
                
            return patrick;
            }

            在這個(gè)例子中,q的作用域被限制在內(nèi)部代碼塊內(nèi),只有該代碼內(nèi)的代碼可以訪問(wèn)q。
            C99允許在一個(gè)代碼塊中的任何位置聲明變量,使用之前請(qǐng)注意編譯器能不能支持。
            如,你可以這樣聲明

            for (int i=0; i < 10; i++ )
            {
                
            printf ("A C99 feature: i=%d", i);
            }

            2.函數(shù)原型作用域
            從變量定義處一直到原型聲明的末尾,這意味著編譯器在處理一個(gè)函數(shù)原型的參數(shù)時(shí),它所關(guān)心的只是該參數(shù)的類(lèi)型;您使

            用的名字是無(wú)關(guān)緊要的。

            int mighty (int mouse, double large);

            3.文件作用域
            一個(gè)在所有函數(shù)之外定義的變量具有文件作用域 (file scope)。
            具有文件作用域的便狼從它定義處到包含該定義的文件結(jié)尾處都是可見(jiàn)的。

            #include <stdio.h>
            int units = 0;//具有文件作用域的變量
            void critic (void);
            int main (void)
            {
                ……
            }
             
            void critic (void)
            {
                ……
            }

            這里,變量units具有文件作用域,在main ()和critic ()中都可以使用它。因?yàn)樗鼈兛梢栽诓恢挂粋€(gè)函數(shù)中使用,文件作用域變量也被稱(chēng)為全局變量(global varibale)。

            4.goto
            函數(shù)作用域只適用于goto語(yǔ)句使用的標(biāo)簽。函數(shù)作用域意味著一個(gè)特定函數(shù)中的goto標(biāo)簽對(duì)該函數(shù)中任何地方的代碼都是可見(jiàn)的,無(wú)論該標(biāo)簽出現(xiàn)在哪一個(gè)代碼塊中。

            posted on 2008-05-06 18:21 聶元朗 閱讀(534) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): C語(yǔ)言學(xué)習(xí)筆記
            日产精品99久久久久久| 国产精品久久久久影院色| 欧美日韩成人精品久久久免费看| 久久久WWW成人免费毛片| 久久无码专区国产精品发布| 久久午夜无码鲁丝片| 久久精品国产99国产精品| 亚洲AV无码久久精品成人 | 久久久久亚洲AV无码永不| 久久精品国产亚洲AV香蕉| 久久久久18| 日韩欧美亚洲综合久久影院d3| 99久久国产宗和精品1上映| 国产高清美女一级a毛片久久w| 一本一道久久综合狠狠老| 国产精品日韩欧美久久综合| 日产精品久久久一区二区| yy6080久久| 亚洲欧洲久久久精品| 成人精品一区二区久久久| 97久久国产亚洲精品超碰热| 久久乐国产综合亚洲精品| 99久久亚洲综合精品成人| 久久精品无码一区二区无码| 久久无码AV一区二区三区| 日本亚洲色大成网站WWW久久| 国产精品久久久天天影视香蕉 | 国产亚洲婷婷香蕉久久精品| 囯产精品久久久久久久久蜜桃 | 伊人久久综合成人网| 久久亚洲国产成人影院网站| 66精品综合久久久久久久| 精品久久久久久久中文字幕| 精品一区二区久久久久久久网站| 久久99精品久久久久久hb无码| 久久综合综合久久综合| 久久狠狠高潮亚洲精品| 久久99精品国产99久久6男男| 国产成人精品久久二区二区| 伊人久久大香线蕉精品| 久久男人AV资源网站|