關鍵字static的作用

2021-04-07 07:37:10 字數 462 閱讀 5810

關鍵字static的作用是什麼?

這個簡單的問題很少有人能回答完全。在c語言中,關鍵字static有三個明顯的作用:

1在函式體,乙個被宣告為靜態的變數在這一函式被呼叫過程中維持其值不變。

2 在模組內(但在函式體外),乙個被宣告為靜態的變數可以被模組內所用函式訪問,但不能被模組外其它函式訪問。它是乙個本地的全域性變數。

3在模組內,乙個被宣告為靜態的函式只可被這一模組內的其它函式呼叫。那就是,這個函式被限制在宣告它的模組的本地範圍內使用。

大多數應試者能正確回答第一部分,一部分能正確回答第二部分,同是很少的人能懂得第三部分。這是乙個應試者的嚴重的缺點,因為他顯然不懂得本地化資料和**範圍的好處和重要性

int teststatic()

main()

==》2 2 2 2 2

int teststatic()

main()

==》2 3 4 5 6

static關鍵字的作用

static關鍵字是c,c 中都存在的關鍵字,它主要有三種使用方式,其中前兩種在c c 語言中使用,第三種只在c 中使用 c,c 中具體細微操作不盡相同,本文以c 為準 1 區域性靜態變數 2 外部靜態變數 函式 3 靜態資料成員 成員函式 下面就這三種使用方式及注意事項分別說明 一 區域性靜態變數...

關鍵字Static的作用

1 修飾變數 區域性靜態變數和全域性靜態變數,都存在記憶體的靜態區 區域性靜態變數,在函式體內定義,只能在函式內部使用,同乙個檔案中的其他函式不能用。即使函式執行結束,這個靜態變數的值也不會被銷毀,函式下次使用時仍能用到這個值。全域性靜態變數,在函式外部定義,作用域 從定義處開始,到所在檔案結尾處結...

static 關鍵字的作用

1 函式體內 static 變數的作用範圍為該函式體,不同於 auto 變數,該變數的記憶體只被分配一次,因此其值在下次呼叫時仍維持上次的值 2 在模組內的 static 全域性變數可以被模組內所用函式訪問,但不能被模組外其它函式訪問 3 在模組內的 static 函式只可被這一模組內的其它函式呼叫...