C C 中static關鍵字的用法

2021-09-28 10:25:58 字數 530 閱讀 3222

一、c語言中static關鍵字的用法主要體現在三個方面:對全域性變數、區域性變數、函式

1、全域性變數

static修飾全域性變數,會改變全域性變數的作用域;static修飾全域性變數的時候,這個全域性變數只能在本檔案中訪問,不能在其它檔案中訪問,即便是extern外部宣告也不可以

2、區域性變數

3、函式

函式的實現使用static修飾,那麼這個函式只可在本cpp內使用,不會同其他cpp中的同名函式引起衝突;

在函式返回型別前加static,函式就定義為靜態函式。函式的定義和宣告在預設情況下都是extern的,但靜態函式只是在宣告他的檔案當中可見,不能被其他檔案所用。

二、c++中可以使用static修飾類成員——靜態成員

1、static修飾成員變數

C C 中static關鍵字用法詳解

static關鍵字修飾的函式和全域性變數只會在本檔案可見,對外不可見。即其他檔案無法訪問本檔案定義的函式,用extern無法獲取到變數和函式的定義。通過用static修飾函式,我們可以在不同的檔案定義多個同名的函式。static修飾的區域性變數的記憶體不會開闢在棧上,而是開闢在靜態變數區。即和全域性...

C C 語言 static關鍵字的用法

c c 中static關鍵字可以從以下三個方面理解 static int a 本質意義為static修飾的變數被分配在靜態儲存區,不是在棧上,也不是在堆上。所以有以下應用場景。1,c語言中,會在初次執行的時候進行初始化,整個程式執行期間都不釋放。如果變數為c 類物件,則在main 之前執行建構函式,...

C C 中的static關鍵字

關鍵字extern和static用來說明具有靜態儲存期的變數和函式。用static宣告的區域性變數只能被定義該變數的函式所識別,但是不同於自動變數的是,static變數在其函式被呼叫退出後,仍保留其值。下次函式被呼叫時,可以訪問最近一次被修改後的值。static變數的宣告方法如下 static in...