const關鍵字在C語言中的作用總結

2022-07-22 08:45:12 字數 1102 閱讀 3628

修飾變數

c語言中採用const修飾變數,功能是對變數宣告為唯讀特性,並保護變數值以防被修改。舉例說明如下:

const int i = 5;

上面這個例子表明,變數i具有唯讀特性,不能夠被更改;若想對i重新賦值,如i = 10;則是錯誤的。

值得注意的是,定義變數的同時,必須初始化。定義形式也可以寫成int const i=5,同樣正確。

此外,const修飾變數還起到了節約空間的目的,通常編譯器並不給普通const唯讀變數分配空間,而是將它們儲存到符號表中,無需讀寫記憶體操作,程式執行效率

也會提高。

修飾陣列

c語言中const還可以修飾陣列,舉例如下:

const int array[5] = ;

array[0] = array[0]+1; //錯誤

陣列元素與變數類似,具有唯讀屬性,不能被更改;一旦更改,如程式將會報錯。

修飾指標

c語言中const修飾指標要特別注意,共有兩種形式,一種是用來限定指向空間的值不能修改;另一種是限定指標不可更改。舉例說明如下:

int i = 5;

int j = 6;

int k = 7;

const int * p1 = &i; //定義1

int * const p2 =&j; //定義2

上面定義了兩個指標p1和p2。

在定義1中const限定的是*p1,即其指向空間的值不可改變,若改變其指向空間的值如*p1=20,則程式會報錯;但p1的值是可以改變的,對p1重新賦值如p1=&k是沒有任何問題的。

在定義2中const限定的是指標p2,若改變p2的值如p2=&k,程式將會報錯;但*p2,即其所指向空間的值可以改變,如*p2=80是沒有問題的,程式正常執行。

修飾函式引數

const關鍵字修飾函式引數,對引數起限定作用,防止其在函式內部被修改。所限定的函式引數可以是普通變數,也可以是指標變數。舉例如下:

void fun1(const int i)

void fun2(const int *p)

C語言中const關鍵字

c語言中const關鍵字是constant的縮寫,翻譯為常量,常數的意思,主要作用如下 c語言中使用const修飾變數,主要是對變數宣告為唯讀特性,並保護變數以防止被修改。例如 const i 5 變數i只具有唯讀特性,不能夠被更改,若想重新對i進行賦值,如i 10 是不可行的。c語言中const還...

c語言中const 關鍵字的理解

對於非指標變數的修飾,const可以放在型別的前面,也可以放在型別的後面,例如 int const myint 或者 const int myint 他們所表達的意思是一樣的,都是表示myint 是常量,不能再修改myint的值 對於指標變數的宣告,四種情況,以int為例 1.const int m...

C語言中const關鍵字的用法

關鍵字const用來定義常量,如果乙個變數被const修飾,那麼它的值就不能再被改變,我想一定有人有這樣的疑問,c語言中不是有 define嗎,幹嘛還要用const呢,我想事物的存在一定有它自己的道理,所以說const的存在一定有它的合理性,與預編譯指令相比,const修飾符有以下的優點 1 預編譯...