c語言關鍵總共有32個,常用的以下幾種:
1、auto
等同於區域性變數的意思。
分配在棧上,動態分配儲存空間,由系統自動處理。
auto型別的初值是不確定的,所以要記得初始化。
void
func()
關鍵字auto可以省略,前面使用的區域性變數均省略了auto的自動變數。
2、static
static可以令其定義變數記憶體區所有位元組預設初始化為0,減少工作量。自動變數是臨時的,而靜態變數是永久性的,程式執行期間始終存在。
a、定義靜態全域性變數,其他檔案中不能用。全域性變數預設是extern屬性,而靜態全域性變數是 internal屬性。所以編譯多個檔案時候盡量不用全域性變數,換做靜態全域性變數。其他檔案不能引用。
b、定義靜態區域性變數,改變量值的生命週期和全域性變數相同。其他函式不能引用。
3、const
定義變數不可變性 ,節約空間。
const
int max_lev 255
4、extern
嚴格對應宣告時的格式,要用的話在.h宣告,作用於整個程式,程式執行期間始終存在。
5、register
必須是乙個單個的值,長度小於或者等於整形的長度,其儲存在cpu的暫存器中,屆時該變數將被頻繁的試用。暫存器變數的值存放在cpu的暫存器中,使用時候直接從暫存器取出進行運算,不能用&來尋找。由於cpu暫存器數量有限,不能長期被某個變數占用。因此,一些系統對暫存器的使用做了數量的限制,或者用自動變數代替。
C語言volatile關鍵字理解
volatile提醒編譯器它後面所定義的變數隨時都有可能改變,因此編譯後的程式每次需要儲存或讀取這個變數的時候,都會直接從變數位址中讀取資料。如 果沒有volatile關鍵字,則編譯器可能優化讀取和儲存,可能暫時使用暫存器中的值,如果這個變數由別的程式更新了的話,將出現不一致的現象。編譯器優化介紹 ...
C語言常用關鍵字演示
通常情況下,c語言中常用關鍵字有32個,按作用分為資料型別關鍵字和控制語句關鍵字。1.資料型別關鍵字 void,char,int,long,float,double,signed,unsigned,struct,union,enum,typedef,sizeof,auto,static,regist...
c語言static關鍵字的理解
在c語言中static恰當的使用能讓程式更加完美,細節上的嚴謹,會更好,也更利於程式的維護與擴充套件。而static使用靈活,且又有兩種完全無關的用法,所以整理總結一下。1 static修飾區域性變數,成為乙個區域性靜態變數。2 static修飾全域性變數與函式,成為靜態全域性變數與靜態函式。可能會...