C 中變數的作用域

2021-08-11 00:09:44 字數 571 閱讀 1364

作用域(scope)是程式的一部分,在其中名字有其特定含義

c++語言中大多數作用域都以花括號分隔

注意:同乙個名字在不同的作用域中可能是指向的是不同的實體,實體的有效區域始於名字的宣告語句,以宣告語句所在的作用域末端結束

int main()

如上面的程式的例子,main定義於所有花括號之外,所以是擁有全域性作用域,一旦宣告之後,全域性作用域中的名字在整個程式的範圍之內都可以使用。

sum擁有塊作用域(blockscope),在main函式之中都可以使用,但是出了main之後,就無法進行訪問了。

這裡有乙個建議就是,在物件第一次被使用的時候再定義它,如:

int a = 0;

printf(a);

int b = 1;

printf(b);

注意,在c的規範中是不允許這麼做的,但是c++支援並且建議這麼做,並且對於c來說,不同的編譯器有差異,如gcc就支援,這樣做的好處是有助於更容易找到變數的定義,更重要的是,靠近第一次被使用的地方,我們會賦給它乙個更加合理的初值

c 變數作用域

作用域是程式的乙個區域,一般來說有三個地方可以宣告變數 1.在函式或乙個 塊內部宣告的變數,成為區域性變數 2.在函式引數的定義中宣告的變數,稱為形式引數 3.在所有函式外部宣告的變數,成為全域性變數 include using namespace std int x 全域性變數 int main ...

C 變數作用域

作用域是程式的乙個區域,一般來說有三個地方可以定義變數 我們將在後續的章節中學習什麼是函式和引數。本章我們先來講解宣告是區域性變數和全域性變數。在函式或乙個 塊內部宣告的變數,稱為區域性變數。它們只能被函式內部或者 塊內部的語句使用。下面的例項使用了區域性變數 include iostream us...

C 變數作用域

作用域是程式的乙個區域,一般來說有三個地方可以定義變數 區域性變數 include using namespace std int main 全域性變數 在所有函式外部定義的變數 通常是在程式的頭部 稱為全域性變數。全域性變數的值在程式的整個生命週期內都是有效的。全域性變數可以被任何函式訪問。也就是...