C語言 static關鍵字作用

2021-10-04 21:09:27 字數 607 閱讀 8646

c語言static關鍵字的兩個作用是作用域儲存域

作用域:

用static宣告的全域性變數或函式只能在本檔案中使用,不能被其他檔案的函式呼叫,不同的檔案可以使用相同名字的變數或靜態函式,互不影響,這樣極有利於程式的模組化和封裝。

儲存域:

定義區域性變數時如果加上了static關鍵字就存放在靜態區,這一段記憶體是在main函式執行之前初始化的,所以它只被初始化一次。由於它是在程式執行開始到程式結束一直存在,也就是說它不像棧記憶體一樣會自動釋放,而是一直占用著記憶體。例如:

#

include

intadd

(void

)int

main()

return0;

}

執行結果為:

add_val =

1add_val =

2add_val =

3

C 關鍵字static作用

關鍵字static作用?static可以用作函式和變數的字首 在模組內的static變數可以被模組內所有函式訪問,但不能被模組外其他函式訪問。在模組內的static函式只可被這一模組內的其他函式呼叫,這個函式的使用範圍被限制在宣告它的模組內。2.1函式體內static變數的作用範圍為該函式體,不同於...

C語言中static關鍵字的作用

在c語言中static的作用如下 第 一 在修飾變數的時候,static修飾的靜態區域性變數只執行一次,而且延長了區域性變數的生命週期,直到程式執行結束以後才釋放。第二 static修飾全域性變數的時候,這個全域性變數只能在本檔案中訪問,不能在其它檔案中訪問,即便是extern外部宣告也不可以。第三...

C語言中static關鍵字的作用

在c語言中static的作用如下 第一 在修飾變數的時候,static修飾的靜態區域性變數只執行一次,而且延長了區域性變數的生命週期,直到程式執行結束以後才釋放。第二 static修飾全域性變數的時候,這個全域性變數只能在本檔案中訪問,不能在其它檔案中訪問,即便是extern外部宣告也不可以。第三 ...