由淺入深學習C 變數作用域

2022-09-28 18:03:11 字數 1246 閱讀 9597

c++ 變數作用域

作用域是程式的乙個區域,一般來說有三個地方可以定義變數:

我們將在後續的章節中學習什麼是函式和引數。本章我們先來講解什麼是區域性變數和全域性變數。

區域性變數

在函式或乙個**塊內部宣告的變數,稱為區域性變數。它們只能被函式內部或者**塊內部的語句使用。下面的例項使用了區域性變數:

#include

using namespace std;

int main ()

全域性變數

在所有函式外部定義的變數(通常是在程式的頭部),稱為全域性變數。全域性變數的值在程式的整個生命週期內都是有效的。

全域性變數可以被任何函式訪問。也就是說,全域性變數一旦宣告,在整個程式中都是可用的。下面的例項使用了全域性變數和區域性變數:

#include

using namespace std;

// 全域性變數宣告

int g;

int main ()

在程式中,區域性變數和全域性變數的名稱可以相同,但是在函式內,區域性變數的值會覆蓋全域性變數的值。下面是一xuljy個實程式設計客棧例:

#include

using namespace std;

// 全域性變數宣告

int g = 20;

int main ()

www.cppcns.com當上面的**被編譯和執行時,它會產生下列結果:

初始化區域性變數和全域性變數

當區域性變數被定義時,系統不會對其初始化,您必須自行對其初始化。定義全域性變數時,系統會自動初始化為下列值:

資料型別

初始化預設值

int0

char

'\0'

float

0double

0pointer

null

正確地初始化變數是乙個良好的程式設計習慣,否則有時候程式可能會產生意想不到的結果。

在程式中,區域性變數和全域性變數的名稱可以相同。

但是在函式內的區域性變數與全域性變數是兩個獨立的變數,互不影響。

下述**中,全域性變數定義了乙個int g=99,區域性變數定義了乙個int g=10,由於這兩個g所在的作用域不同,所以各自獨立。

#include

using namespace std;

// 全域性變數宣告

int g = 99;

// 函式宣告

int func();

int main()

// 函式定義

int func()

c 變數作用域

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

C 變數作用域

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

C 變數作用域

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