學習筆記 C語言中常量與指標

2021-10-02 19:12:48 字數 1092 閱讀 9620

1.常量指標:指標所指向的內容不可以通過指標的間接引用(*p)改變,指標本身是變數,但是指標所指向的值是乙個常量
const

int x =1;

const

int* p1;

p1 =

&x //指標p1的型別是 (const int*)

*p1 =10;

//error

char

* s1 =

"hello"

;//error

const

char

* s2 =

"hello"

;//correct

"hello"是乙個常量,s1是乙個指向該字串首字元的乙個指標(存著h字元的位址),hello不能被修改,因此指標必須是const 型別

2.指標常量:指標本身的內容是個常量,不可以被修改。
int x =

1, y =1;

int*

const p2 =

&x;//常量p2的型別是(int*)

*p2 =10;

//okey x=10

p2 =

&y;//error p2是常量

《陣列名就是陣列的首位址別名,可以說陣列名就是乙個指標常量》

int i =10;

intconst

* pi =

&i;//只是說明pi指向的位置中所存的內容不能通過*pi的方式被改變

const

int ci =10;

const

int* pci =

&ci;

//ci存放於常量區,不可被改變,pci指向的位址中所存的內容,不能通過*pci的方式改變

##總結

const int * x

int * const y

在前先讀,在前不變

*(指標)和const(常量)誰在前先讀誰

*代表被指的資料,名字代表指標位址

const在誰前面誰就不允許被改變

C語言中的常量指標與指標常量

1.常量指標與指標常量是c語言中兩個比較容易混淆的概念 1 const char p 2 char const p a 3 char p abc 1 式定義了乙個常量指標,即指向乙個常量的指標,指向的內容是常量,不可修改,放在常量區的,但指標本身可以修改,即 p b 是非法的,p是p指向的常量的第乙...

C語言中的指標常量與常量指標

很多人糾結過這兩個名詞,也有人寫文章區分兩者的區別。其實很簡單,常量指標和指標常量乙個是指標 乙個是常量。const int p var 與 int const p var 的功能是相同的,都是乙個指向整型常量的指標。指標的數值可以修改,但是當前指標指向的量不可修改。該如何去確認p var的含義呢?...

C語言中常量和變數

在c語言中,常量和變數都是可以用來儲存和表示資料的,常量值在程式執行的過程中是不可變的,而變數是可變的 1,常量的概念 常量是不可變的量,c語言中數值可以用常量表示,常量可以表示各種資料型別的值 2,變數的概念 變數和常量是相對的,變數在程式執行過程中是可變的量,由變數名和變數值組成,變數名是乙個標...