C 常量指標和指標常量的區別

2021-10-04 10:44:29 字數 822 閱讀 9596

首先是乙個常量,其次該常量是個指標。因為是乙個指標型別的常量,所以定義時必須初始化乙個變數的位址,且始終指向該位址不能被更改即只能賦值一次,但位址中存放的內容可以被更改

通過以下例子了解指標常量的特性:

int a,b;

int*

const p =

&a;//指標常量初始化

*p =10;

//操作成功,指標常量所指位址的內容可以被更改

p =&b;

//操作錯誤,指標常量指向的位址不能被更改,因為只能賦值一次

字面意思常量的指標,即該指標是乙個指向常量的指標變數。定義時不需要被初始化。該指標可以指向不同的變數位址,但不能通過該指標改變變數的內容

通過以下例子了解常量指標的特性:

int a,b;

const

int* p;

//定義常量指標

p =&a;

//常量指標賦值

*p =10;

//操作錯誤,不能通過常量指標改變變數的內容

p =&b;

//操作成功,常量指標指向的位址可以被更改

由以上兩部分的介紹,不難推導出指向常量的常指標的形式:

舉例如下:

int a =10;

const

int*

const p =

&a;//必須初始化,且只能賦值一次,指向的位址不能改,不能通過指標改變變數的內容

c 常量指標和指標常量區別

const double cptr 這裡的cptr是乙個指向double型別const物件的指標,const限定了cptr指標所指向的物件型別,而並非cptr本身。也就是說cptr本身並不是const。在定義時不需要對它進行初始化,如果需要的話,允許給cptr重新賦值,使其指向另乙個const物件。...

指標常量和常量指標的區別

1 指標常量 顧名思義它就是乙個常量,但是是指標修飾的。格式 int const p 指標常量例 int a,b int const p a 指標常量 那麼分為一下兩種操作 p 9 操作成功 p b 操作錯誤,指標p將一直指向a,不能再指向b因為宣告了指標常量,p代表乙個指標位址,因此指標變數不允許...

常量指標和指標常量的區別

常量指標 如果在定義指標變數的時候,資料型別前用const修飾,被定義的指標變數就是指向常量的指標變數,指向常量的指標變數稱為常量指標,格式如下。const int p a 常量指標例項 int a,b const int p a 常量指標 那麼分為以下兩種操作 p 9 操作錯誤 p b 操作成功指...