一,指向常量的指標
宣告乙個指向常量的指標,例如:
int num = 20;
const int *p = #
上面的宣告指出p指向乙個const int,因此不能使用p來修改這個值,換句話說*p的值為const不能修改。p的宣告並不意味著它指向的值實際上是乙個常量,而只是意味著對p而言,這個值是常量。例如,p指向num,而num不是const。可以直接通過num變數來修改num的值,但是不能使用p指標來修改num的值。
注意:可以將const資料或非const資料的位址賦給指向const的指標,但是只能將非const的位址賦給非const指標。
二,盡可能使用const
將指標引數宣告為指向常量資料的指標有兩條理由:
1,無法通過指針對原始資料進行修改。
2,使用const使得函式可以處理const與非const引數,否則將只能接受非const資料。
#include using namespace std;
void display(const int nums, int n){
for(int i = 0; i < n; i ++){
cout<
三,指標常量
宣告乙個指標常量
int num = 20;
int *const p = #
可以修改指標指向的num,但是不能修改指標的值。
四,兩種指標語法上的區別
int nums = 20;
const int *p = &nums; //指向常量的指標
int *const q = &nums; //常指標
1,const位於*的左側宣告的是指向常量的指標。
2,const位於*的右側宣告的是常指標。
常指標 指向常量的指標與指向常量的常指標的區分
個人根據一些資料,簡要總結如下 include using namespace std int main 補充 1 constexpr變數簡介 在c 11新標準規定,允許將變數宣告為constexpr型別以便由編譯器來驗證變數的值是否是乙個常量表示式。宣告為constexpr的變數一定是乙個常量,而...
指標常量,常指標,指向常量的常指標
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 我們可以...