總結
int a=1;
//整型變數
const
int b=2;
//常量
intconst b=2;
//這裡定義和上面定義是乙個意思,建議按照上面的規範寫**
int
*p;//普通整型指標
p=&a;
//另一種形式,意思與上兩句定義完全一樣,只是為了和指標常量對比
int*p=
&a;*p=2;
//可以更改指標指向變數的值,相當於變數a的值被更改為2
int c=3;
p=&c;
//也可以更改指標的指向,相當於由指向變數a轉變為指向變數c
/****以下**不能通過-----我是分割線****/
p=&b;
//因為變數b是常量,所以此處賦值會報錯。普通指標不能指向常量
const
int*c_p;
c_p=
&a;//另一種形式,意思與上兩句定義完全一樣,只是為了和指標常量對比
const
int*c_p=
&a;
c_p=
&b;//更改指標的指向,常量指標可以指向常量
/****以下**不能通過-----我是分割線****/
*c_p=3;
//因為c_p是常量指標,所以不能更改指向的變數的值
int
*const p_c=
&a;*p_c=1;
/****以下**不能通過-----我是分割線****/
int*
const p_c;
p_c=
&a;//因為是指標常量,所以需要在定義時就賦好初值
int d=1;
p_c=
&d;//因為是指標常量,所以在定義賦值好初值之後,不能再更改指向
int*
const p_c=
&b;//指標常量不能指向普通常量
區別是指標常量還是常量指標可以看const和*的位置,按照從左往右讀,先看到誰就讀誰。 c 常量指標和指標常量區別
const double cptr 這裡的cptr是乙個指向double型別const物件的指標,const限定了cptr指標所指向的物件型別,而並非cptr本身。也就是說cptr本身並不是const。在定義時不需要對它進行初始化,如果需要的話,允許給cptr重新賦值,使其指向另乙個const物件。...
C 常量指標和指標常量的區別
首先是乙個常量,其次該常量是個指標。因為是乙個指標型別的常量,所以定義時必須初始化乙個變數的位址,且始終指向該位址不能被更改即只能賦值一次,但位址中存放的內容可以被更改。通過以下例子了解指標常量的特性 int a,b int const p a 指標常量初始化 p 10 操作成功,指標常量所指位址的...
區別 指標常量 指標變數 常量指標和常量指標常量
1.指標變數 指標值 即指標的指向 可以改變的指標,只能指向變數 2.指標常量 指標值 即指標的指向 不能改變的指標,只能指向變數,但可以修改指向的實體變數的值 3.常量指標 指向常量的指標,所以不能修改指向的實體的值,但可以修改指標的指向 即可以指向別的常量,必須是常量 4.常量指標常量 指向常量...