指標

pointer

參考網址

https://kopu.chat/2017/05/15/c%E8%AA%9E%E8%A8%80-%E8%B6%85%E5%A5%BD%E6%87%82%E7%9A%84%E6%8C%87%E6%A8%99%EF%BC%8C%E5%88%9D%E5%AD%B8%E8%80%85%E8%AB%8B%E9%80%B2%EF%BD%9E/

資料結構(陣列/字串/鏈結串列)、系統程式(編譯器/作業系統)、演算法,都會用到指標。

概念資料的址(address)就是指標

變數的三個要素:變數位址、變數值、變數名稱。

指標:某變數的位址,稱為「指向該變數的指標」。

指標與指標變數式不同概念。

「取址」運算符號:&

int a=5;

printf("變數a的值:%d\n",b);

printf("變數a的記憶體位址:%p\n",&b); //十六進位

「取值」運算符號:*

printf("變數a的值:%d\n",*&b); // *&b 等同 b

指標變數指標 (Pointer) 就是某變數的位址,存放指標的變數即為指標變數(Pointer Variable)。

int a=100;

int * pch=&a;

printf("%p",pch); //指標變數位址值(a的位址)

printf("%d",*pch); //指標變數指向的值(=a=100)

printf("%d",&pch); //指標變數所在記憶體位址(與a不同)