LR靜態儲存 動態儲存 指標變數指令碼說明

2022-03-22 07:10:18 字數 1093 閱讀 6310

在一次教程學習中,看到該知識點並記錄了下來,希望與大家共同**學習。

一、靜態儲存與動態儲存

靜態儲存變數通常是在變數定義時就分定儲存單元並一直保持不變, 直至整個程式結束。動態儲存變數是在程式執行過程中,使用它時才分配儲存單元,使用完畢立即釋放。動態儲存變數最典型的例子是函教的形式引數,在函式定義時並不給形參分配儲存單元,只是在函式被呼叫時,才予以分配,呼叫函式完畢立即釋放,如果乙個函式被多次呼叫 ,則反覆地分配和釋放形參變數的儲存單元。

從以上分析可知,靜態儲存變數是一直存在的 ,而動態儲存變是則時而存在時而消失。 我們又把這種由於變數儲存方式不同而產生的特性稱變數的生存期。( 見以下指令碼 )

1

action()210

1112

return0;

13}1415

16//

靜態動態變數測試函式

17void auto_static(void)18

1 action.c(38): var_auto=0,var_static=0

2 action.c(38): var_auto=0,var_static=1

3 action.c(38): var_auto=0,var_static=2

4 action.c(38): var_auto=0,var_static=3

5 action.c(38): var_auto=0,var_static=4

view code

二、指標

指標是乙個儲存計算機記憶體位址的變數。從指標指向的記憶體讀取資料稱作指標的取值。指標可以指向某些具體型別的變數位址,例如int、 long 和double。

根據出現的位置不同,操作符 * 既可以用來宣告乙個指標變數,也可以用作指標的取值。當用在宣告乙個變數時,表示這裡宣告了乙個指標。其它情況用到 * 表示指標的歌值。

& 是位址操作符,用來引用乙個記憶體位址。通過在變數名字前使用&操作符,我們可以得到該變數量的記憶體位址。(見以下解本)

1

action()

2

輸出的值為: var is 99

靜態儲存 動態儲存 靜態變數與動態變數

動態變數 int a 靜態變數 static int a 靜態變數,全域性動態變數都是靜態儲存,儲存在全域性資料區,在變數定義時就分定儲存單元並一直保持不變,直至整個程式結束。靜態儲存變數是一直存在的,只會初始化一次。區域性動態變數是動態儲存,動態儲存變數是在程式執行過程中,使用它時才分配儲存單元,...

靜態儲存與動態儲存

靜態儲存變數通常是在變數定義時就分定儲存單元並一直保持不變,直至整個程式結束。5.5.1節中介紹的全域性變數即屬於此類儲存方式。動態儲存變數是在程式執行過程中,使用它時才分配儲存單元,使用完畢立即釋放。典型的例子是函式的形式引數,在函式定義時並不給形參分配儲存單元,只是在函式被呼叫時,才予以分配,呼...

C 靜態儲存,動態儲存

什麼是靜態儲存,動態儲存 靜態儲存變數通常是在變數定義時就分定儲存單元並一直保持不變,直至整個程式結束。動態儲存變數是在程式執行過程中,使用它時才分配儲存單元,使用完畢立即釋放。典型的例子是函式的形式引數,在函式定義時並不給形參分配儲存單元,只是在函式被呼叫時,才予以分配,呼叫函式完畢立即釋放。如果...