面試題目:C語言關鍵字

目錄

一,static關鍵字

二,const關鍵字

三,volatile關鍵字


一,static關鍵字

在C語言中,關鍵字static有三個明顯作用:

1,修飾局部變量,改變了變量的生存期,該變量只被初始化一次,下一次依據上一次結果值。

2,修飾全局變量,改變了變量的作用域,該變量只能在本文件中訪問,不能在其它文件中訪問。

3,修飾一個函數,改變了函數的作用域,該函數只能在本文件中調用,不能被其他文件調用。

二,const關鍵字

1,const作用可以用來定義常量,修飾函數參數,修飾函數返回值,被const修飾東西,都受到強制保護,防止其它代碼無意識修改,從而提高程序的健壯性。

2,const規則const離誰近,誰就不能被修改;const修飾一個變量時,一定要給這個變量初始化,若不初始化,在後面也不能初始化。

3,const優點

3.1,編譯器可以對const進行類型安全檢查(所謂的類型安全檢查,能將程序集間彼此隔離開來,這種隔離能確保程序集彼此間不會產生負面影響,提高程序的可讀性)。

3.2,有些集成化的調試工具可以對const常量進行調試,使編譯器對處理內容有了更多的瞭解,消除了一些隱患。

3.3,可以節省空間,避免不必要的內存分配,因爲編譯器通常不爲const常量分配內存空間,而是將它保存在符號表中,這樣就沒有了存儲於讀內存的操作,使效率也得以提高。

3.4,可以很方便的進行參數的修改和調整,同時避免意義模糊的數字出現

三,volatile關鍵字

1,volatile作用一個定義爲volatile的變量說明這個變量可能會被意想不到地改變。在用到這個變量時,必須每次都要重新從內存中讀取這變量的值,而不是使用保存在寄存器裏的備份。

2,volatile的三個例子

2.1,並行設備的硬件寄存器(如,狀態寄存器)。

2.2,一箇中斷服務子程序中會訪問到的非自動變量。

2.3,多線程應用中被幾個任務共享的變量。

歡迎訂閱公衆號【從零開始學無線】,一起學習交流! 

                                                         

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章