C 指標常量 常量指標和常指標常量

2021-06-27 06:55:24 字數 1274 閱讀 9508

1、指標常量

如果在定義指標變數時候,指標變數前用const修飾,被定義的指標變數就變成了乙個指標型別的常變數,指標型別的常變數簡稱為指標常量。

格式如下

資料型別  *   const  指標變數=變數名;

修飾符const與指標變數緊鄰,說明指標變數不允許修改,既然指標變數的值不能修改,所以一定要在定義的時候給定初值(指向乙個確定存在的地方) 如下

char * const p="abcdef";

p=null;//錯誤,指標常量不能再改變

p="1234";//錯誤

p=(char *)q;//錯誤

可以這樣理解

如:修改指向0x123456的內容   *p=『b』;//正確

2、常量指標

如果在定義指標變數的時候,資料型別前用const修飾,被定義的指標變數就是指向常量的指標變數,指向常量的指標變數稱為常量指標,格式如下

const 資料型別  *指標變數=變數名;

或者     資料型別  const  * 指標變數=變數名;

定義乙個常量指標後,指標指向的值就不能被改變,即不能通過指標變數直接更改指標指向的值

const char *p="abcdef";

*p='1';//錯誤,檢視更改指標指向的值

p[1]='1';//錯誤

p=null;//正確,檢視修改指標的位置,而不是修改指標指向的內容

3、常指標常量

格式為

const   資料型別 * const 指標變數=變數名;

資料型別 const  *const 指標變數=變數名;

指標不能改變,指標指向的值也不能改變

char *q;

const char * const p="abcdef";//定義了乙個常量常指標

q=p;//錯誤,試圖講乙個常指標賦值給非常指標

p=q;//錯誤,試圖修改指標常量的值,如1

*p=『1』;//錯誤,試圖修改指標指向的值,如2

p[1]='1';//錯誤,如2

p=null;//錯誤,如1

指標常量,常指標,指向常量的常指標

1.指標常量 從字面意思可以看出,指標是乙個常量,也就是位址不能被修改。int const p 特點是指標指向的數值可以改變,然而指標所儲存的位址卻不可以改變。include using namespace std void main int a 10 int const p a cout 我們可以...

指標常量,常指標,指向常量的常指標

1.指標常量 從字面意思可以看出,指標是乙個常量,也就是位址不能被修改。int const p 特點是指標指向的數值可以改變,然而指標所儲存的位址卻不可以改變。include using namespace std void main int a 10 int const p a cout 我們可以...

C 常量指標,指標常量,指向常量的常指標詳解

目錄 指標就是指向變數在記憶體中的位址 資料是存放在記憶體中的,每乙個變數都有乙個記憶體位址,假設是乙個int型別變數a,佔4個位元組的記憶體區,那麼在記憶體中如果是小端方式儲存,我們建立指標p,把a的位址賦值給p,就是把a的首位址0x1100賦值給指標p,這個時候p的值就是變數a在記憶體中的首位址...