C 關鍵字static作用

2021-10-01 08:03:53 字數 799 閱讀 3297

關鍵字static作用?

static可以用作函式變數的字首

在模組內的static變數可以被模組內所有函式訪問,但不能被模組外其他函式訪問。

在模組內的static函式只可被這一模組內的其他函式呼叫,這個函式的使用範圍被限制在宣告它的模組內。

2.1函式體內static變數的作用範圍為該函式體,不同於auto變數,該變數的記憶體只被分配一次,因此其值在下次呼叫時仍維持上次的值。

2.2static保持變數內容的持久。儲存在靜態資料區的變數會在程式剛開始執行時就完成初始化,也是唯一的一次初始化。共有兩種變數儲存在靜態儲存區:全域性變數和static變數,只不過和全域性變數比起來,static可以控制變數的可見範圍,說到底static還是用來隱藏的。

#include "stdafx.h"

#include "windows.h"

void printfval()

int main()

while (true)

return 0;

}

2.3static預設初始化為0。其實全域性變數也具備這一屬性,因為全域性變數也儲存在靜態資料區。在靜態資料區,記憶體中所有的位元組預設值都是0x00,某些時候這一特點可以減少程式設計師的工作量。建議:宣告static變數時,程式設計師自己初始化變數

3.1在類中的static成員變數屬於整個類所有,對類的所有物件只有乙份拷貝。

3.2在類中的static成員函式屬於整個類所有,這個函式不接受this指標,因而只能訪問類的static成員變數。

C語言 static關鍵字作用

c語言static關鍵字的兩個作用是作用域和儲存域。作用域 用static宣告的全域性變數或函式只能在本檔案中使用,不能被其他檔案的函式呼叫,不同的檔案可以使用相同名字的變數或靜態函式,互不影響,這樣極有利於程式的模組化和封裝。儲存域 定義區域性變數時如果加上了static關鍵字就存放在靜態區,這一...

static關鍵字的作用

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

關鍵字static的作用

關鍵字static的作用是什麼?這個簡單的問題很少有人能回答完全。在c語言中,關鍵字static有三個明顯的作用 1在函式體,乙個被宣告為靜態的變數在這一函式被呼叫過程中維持其值不變。2 在模組內 但在函式體外 乙個被宣告為靜態的變數可以被模組內所用函式訪問,但不能被模組外其它函式訪問。它是乙個本地...