《C 》關於指標限定(指標常量 常量指標等)

2021-10-21 02:19:33 字數 960 閱讀 8149

int* const   =  int const* 

const int*   

常量指標:指向常量的指標;       

const int* const 

常量指標常量:只能讀取不能修改。

const 修飾的只是限定指標的操作!!!但不能限定空間上的實體的可改變性。因為:

乙個實體可能被不止乙個變數所關聯,所以實體被其他關聯變數的改變是有可能的。

const int a = 78;

int b = 10;

int c = 20;

const int* ip = &a; //常量指標(指向常量的指標,常量內容可變,指向不可變)————const修飾指向的實體型別

int* const cp = &b; //指標常量(指標指向不可變,指向的常量可變)————const修飾指標*cp

int const* dp = &b; //指標常量——同上

const int* const icp = &c; //常量指標常量————只能讀取不能被修改

//ip:指標

//*ip:實體值

*ip = 87; //錯誤:想修改指標指向的常量,但常量指標不能修改指向的實體,故錯誤——*ip只能在等號右邊

ip = &c; //正確:常量指標可以修改指標指向,即修改指標值

*cp = 80; //正確:指標常量可以修改指向的實體值

*icp = 30; //錯誤:常量指標常量不能修改指向的實體

icp = &b; //錯誤:常量指標常量不能修改指標值

int d = *icp; //正確:常量指標常量可以被讀取

/*實體的改變性*/

a = 100;

c = 200;

cout<<"ip =>"<"<100

icp => 200

C 常量指標 指標常量

const char p 常量指標,指向一塊區域,這塊區域不可寫,只能讀。char const p 指標常量,指向一塊區域,這塊區域可讀可寫,但是指標的值初始後就不能改,類似於一般常量。const char const p 上面兩種型別的綜合,指標指向的區域不可寫,可讀。指標初始化後不能改。至於有什...

C 常量指標 指標常量

常量指標 顧名思義就是指向常量的指標。使用常量指標可以防止使用該指標來修改所指向的值。宣告形式為const type pt 或type const pt 不希望函式內部修改引數的值 或者說是函式呼叫的值 例如求和但不希望改變原來的值 intsum const int pa,const int pb ...

關於常量指標 指標常量等

在學習c語言中,我們會很頭疼指標這一東西,可以說指標是c語言的靈魂。不懂指標,就相當於c語言不過關。接下來,我將簡要說下指標,重點放在指向指向非常量資料的非常量指標 指向常量資料的非常量指標 指向非常量資料的常量指標 只想常量資料的常量指標。指標 指標是乙個特殊的變數,它裡面儲存的數值被解釋成為記憶...