const在c中的用法

2021-07-10 13:12:43 字數 783 閱讀 6968

常量和變數的樣子完全一樣,只是常量的值不允許被修改。我們用const這個關鍵字來宣告乙個常量。

例:           const int a=10;

int const a=10;

兩種方式都可以宣告乙個常量效果是一樣的。

我們也可以用const來修飾指標:

const與識別符號:

例:  #define  num    20

const  int    i=20;

假如現在定義兩個陣列arr[num],arr[i],雖然都能達到arr[20]的效果,但是我們還是傾向於使用arr[num],使用者名稱定義陣列長度,或者作為限制迴圈次數的條件,有利於提高程式的維護性,即當我們要修改乙個值時只需要修改宣告就可以了,不用像變數那樣每個都修改。

總結在c中的用法:

1、將變數修飾限定為常量。

2、修飾函式的形參,保護形參不被修改。

3、可以修飾指標。

4、在另一檔案中引用常量extern const,可以保護被引用的值不被修改。

因為被const修飾的變數不允許被修改,所以編譯器認為被const修飾的變數就是乙個常量,所以將他存在暫存器上,每次都從暫存器上引用這個值,所以我們可以偷偷的修改其記憶體中的值,並強制編譯器從記憶體中讀取真個值。

例:  volatile  int const i=10;

int *p=(int *)&i;

*p=20;

輸出i就等於20

volatile 從記憶體中讀取。

const在c 中的用法分析

include using std cout using std endl int main 對於const char 和 char const之間的分析,如 中的const char pstring i am chinese 定義初始化後 i am chinese 這個變數為常量唯讀,如果用pst...

const在c和c 中的用法

下面只是針對於基本型別 對於標準c來說 const修飾的變數是唯讀變數,會分配記憶體空間。但是不能作為左值直接改變。可以通過指標來改變 對於現代c編譯器來說 會做一些優化,會進入符號表。如果有對記憶體的操作出現,那麼它就不會去符號表取值,而是去記憶體中取值。這個和c 進入符號表有些不同。對於c 來說...

const在c和c 中的用法

c中const的用法總結起來主要分為以下兩種 1 在定義變數時使用 由於const常量在定義後不能被修改,所以在定義時一定要進行初始化操作 a 最簡單的用法,說明變數為乙個常變數 在以下例子裡,int 和const的先後順序可以改變的,這無所謂 const int a 100 int const b...