關於區域性變數 全域性變數 形式變數和實參變數

2021-06-18 23:34:17 字數 513 閱讀 8498

區域性變數是指宣告在函式裡的變數,它的生存週期是和它所在的函式體一致的。

全域性變數是指宣告在函式體外面的,生存週期與程式是一樣的。可以在同乙個程式下不同的函式體裡update。

形式引數是指你宣告函式以及建立函式時引數列表裡的引數,用來接收實際引數,也就是被賦值,包括傳值賦值,傳址等賦值方式。

實際引數就是當你呼叫某個函式時,寫在括號裡用來給形式引數賦值。

例如:void divide(double d){};

d為形式引數。

呼叫時divide(20.0);

20.0為實際引數。

一般地,宣告n維陣列的指標時,除了最左邊的方括號可以留空之外,其他都需要填寫數值。請參照下面的等效原型表示:

int sum4d(int (*ar)[12][20][30],int rows); //ar是乙個指標

此處ar指向乙個12*20*30的int陣列。

再次說明由於陣列的維數必須是常量;因此不能用乙個變數代替它。

全域性變數 靜態全域性變數 靜態區域性變數 區域性變數

全域性和靜態變數都在堆裡。這句話應該錯了,應該是放在常量資料段 全域性變數的作用範圍是整個程式 如果程式是多個檔案,必須在其他的檔案中說明 靜態變數的作用範圍要看靜態變數的位置,如果在函式裡,則作用範圍 就是這個函式。靜態全域性變數,只在本檔案可以用,雖然整個程式包含多個檔案,但靜態全域性變數只能用...

全域性變數 靜態全域性變數 靜態區域性變數 區域性變數

全域性和靜態變數都在堆裡。全域性變數的作用範圍是整個程式 如果程式是多個檔案,必須在其他的檔案中說明 靜態變數的作用範圍要看靜態變數的位置,如果在函式裡,則作用範圍 就是這個函式。靜態全域性變數,只在本檔案可以用,雖然整個程式包含多個檔案,但靜態全域性變數只能用在定義它的那個檔案裡,卻不能用在程式中...

全域性變數 靜態全域性變數區域性變數 靜態區域性變數

對於乙個完整的程式,在記憶體中的分布情況如下圖 區 low address 全域性資料區 堆區 棧區 high address 一般程式把新產生的動態資料存放在堆區,函式內部的自動變數存放在棧區。自動變數一般會隨著函式的退出而釋放空間,靜態資料 即使是函式內部的靜態區域性變數 也存放在全域性資料區。...