發(fā)芽土豆還能吃嗎 發(fā)芽土豆還能吃嗎圖片
2022-12-03
更新時(shí)間:2022-06-11 18:00:46作者:未知
指針常量的本質(zhì)是一個(gè)常量,并且使用指針來修飾它,那么說明這個(gè)常量的值應(yīng)該是一個(gè)指針,其格式應(yīng)為:int*const p,而常量指針本質(zhì)是指針,并且這個(gè)指針乃是一個(gè)指向常量的指針。其格式為:int const*p或者const int*p。指針常量的值是指針,這個(gè)值因?yàn)槭浅A?,所以不能被賦值。
在C/C++中,指針常量這樣聲明:只要const位于指針聲明操作符右側(cè),就表明聲明的對(duì)象是一個(gè)常量,且它的內(nèi)容是一個(gè)指針,也就是一個(gè)地址,并且在聲明的時(shí)候一定要給它賦初始值。一旦賦值,以后這個(gè)常量再也不能指向別的地址。
常量指針的使用要注意,指針指向的對(duì)象不能通過這個(gè)指針來修改,可是仍然可以通過原來的聲明修改,也就是說常量指針可以被賦值為變量的地址,之所以叫做常量指針,是限制了通過這個(gè)指針修改變量的值。例如:
int a=2014;
const int b=2015;
const int*c=&a;//這是合法的,非法的是對(duì)c的使用;
*c=2016;//非法,但可以這樣修改c指向的對(duì)象的值:a=2016;
const int*d=&b;//b是常量,d可以指向b,d被賦值為b的地址是合法的。
const(*號(hào))左邊放,我是指針變量指向常量;
const(*號(hào))右邊放,我是指針常量指向變量;
const(*號(hào))兩邊放,我是指針常量指向常量;
指針變量能改指向,指針常量不能轉(zhuǎn)向!
要是全都變成常量,鎖死了,我不能轉(zhuǎn)向,你也甭想變樣!
*(指針)和const(常量)誰在前先讀誰;*象征著地址,const象征著內(nèi)容;誰在前面誰就不允許改變。