1. 程式人生 > >C++的靈活的區域性變數宣告(C++學習筆記 5)

C++的靈活的區域性變數宣告(C++學習筆記 5)

C語言中根據變數的作用域可以把變數分為兩種:區域性變數和全域性變數。

區域性變數:在一個函式內部定義的變數是內部變數,它只在本函式範圍內有效,即只有在本函式內才能使用它們,在此函式外是不能使用這些變數的,這樣的變數成為區域性變數。
區域性變數的特點
(1)主函式main中定義的變數也是區域性變數,只在主函式中有效。
(2)一個函式不能使用其他函式中定義的區域性變數
(3)不同函式可以使用相同名字的區域性變數
(4)形式引數也是區域性變數,只能在定義這個形式引數的函式中使用

全域性變數:在函式之外定義的變數稱為外部變數,外部變數是全域性變數。全域性變數從屬於一個原始檔,它的有效範圍是從定義變數的位置開始到本檔案結束。(全域性變數不好控制,要少用)

  在C語言中全域性變數的宣告必須在任何函式之前,區域性變數必須集中在可執行語句之前。
  而C++的變數宣告非常靈活,它允許變數宣告與可執行語句在程式中交替出現。這樣,程式設計師可以在使用一個變數時才宣告它,需注意,區域性變數的宣告一定要“ 先定義後使用 ”。

例子: 在C語言中下面的函式是不正確的,而在C++中該函式是正確的。

void f(){
        int i;
        i=10;
        int j;
        j=25;
       ···
       ···
       ···
}