c語言中關於變數儲存類別的心得

2021-07-02 05:44:15 字數 841 閱讀 2588

c語言中儲存類別可以分為四類:自動(auto)、靜態(static)、暫存器的(register)和外部的(extern)。

1.首先是auto,用它定義的自動變數,可省略,例如  auto int a=int a       

2.static為修飾的為靜態變數,如果定義在函式內部的,稱之為靜態區域性變數;如果定義在函式外部,稱之為靜態外部變數,比如以下**:

#include void fn()

int main()

}
輸出的結果是1 2 3 4····    如果去掉static,則結果為1 1 1 1···  所以靜態變數

編譯時賦初值,即

只賦初值一次

3.用extern宣告的的變數是外部變數,外部變數的意義是某函式可以呼叫在該函式之後定義的變數。如:

#include void fn()

int main()

extern int x; //呼叫外部變數

printf("x=%d\n",x);

return 0;

}int x=100;

此程式輸出結果為2 4 8 16 32 100,若去掉static,則輸出結果為2 2 2 2 2 100,若去掉extern,則輸出結果為2 4 8 16 32 0.

ps:最後一組結果在code::blocks上輸出為2 4 6 8 32 40,不知道為什麼,先就到這裡吧.

C語言中變數儲存類別

c語言根據變數的生存週期來劃分,可以分為靜態儲存方式和動態儲存方式。靜態儲存方式 是指在程式執行期間分配固定的儲存空間的方式。靜態儲存區中存放了在整個程式執行過程中都存在的變數,如全域性變數。動態儲存方式 是指在程式執行期間根據需要進行動態的分配儲存空間的方式。動態儲存區中存放的變數是根據程式執行的...

C 語言中變數的儲存類別

在說明c 語言中變數的儲存類別之前,我們需要搞明白生存期和作用域兩個概念。生存期和作用域是指從時間和空間兩個角度去描述變數的特性。不同的變數儲存類別直接導致了變數的生存期不同,通俗的說,也就是變數存在的時間不同。靜態儲存變數一般在變數定義之初就為變數分配了固定的儲存單元,這些儲存單元直到程式結束的時...

C語言中變數的儲存類別及其儲存方式

一 auto auto 自動變數,動態儲存方式 auto是c語言中區域性變數的預設屬性 編譯器預設所有的區域性變數 auo變數儲存在程式的棧中,預設屬性 特點 1 自動變數僅適合於區域性變數,其作用域僅限於定義該變數的個體內。在函式定義中定義的自動變數,只在改函式內有效。在復合語句中定義的自動變數只...