學習 C語言 const和指標

2021-09-25 22:35:56 字數 1029 閱讀 7956

複製鏈結

關鍵字const用來定義常量,如果乙個變數被const修飾,那麼它的值就不能再被改變。

const int a = 5;

int const a = 5;

上面這兩種寫法都一樣,都是表示變數a的值不能被改變了。需要注意的地方是,用const修飾變數時,一定要給變數初始化,否則之後就不能再進行賦值了。例如下面這個例子:

const int a;

a = 5; /*錯誤,無法再賦值*/

const char* str="aabbcc";
如果沒有const的修飾,我們可能會在後面有意無意的寫str[4]=『z』;這樣的語句,這樣會導致對唯讀記憶體區域的賦值,然後程式會立刻異常終止。有了const,這個錯誤就能在程式被編譯的時候就立即檢查出來,這就是const的好處,讓邏輯錯誤在編譯期被發現。

常量指標是指標指向的內容是常量,可以有以下兩種定義方式。

const int * p;

int const * p;

int const *p;

int a = 4;

p = &a;

*p = 5;/*錯誤,不能通過指標p來改變值*/

a = 5;/*正確,*p這時候也等於5*/

指標常量是指指標本身是個常量,不能再指向其他的位址,寫法如下:

int *const p;
指標常量指向的位址不能改變,但是位址中儲存的數值是可以改變的,可以通過其他指向該位址的指標來修改。

int a = 4;

int b = 5;

int *const p = &a;/*要馬上初始化,之後無法賦值*/

p = &b;/*錯誤,無法賦值*/

*p = b;/*正確*/

C語言的const和指標

int const a cont int a 這兩者是等價的。代表不可以改變的常量。const修飾的是a代表a不可作為左值。1 常量指標const int b base 或者int const c base 2 指標常量int const d base1 此時要求const 在 號前面。int co...

C和指標 const指標

一,入門 const 指標 指標指向的內容不能變,指標可以改變指向 指向const的指標 指標不可以改變指向,指標指向內容可以變 include stdio.h int main 二,深度解析 大致說來其可分為三種情況 const修飾指標,const修飾引用,const修飾指標的引用.const修飾...

c語言初學 const指標

注意 要在宣告的時候進行初始化 宣告的方式 型別名 const 變數名 1.不能再指向別的變數,指標的value不可更改 cpp include void main 報錯 error c2166 l value specifies const object 2.可以通過指標為那個變數賦值 變數值不是...