定義:《類型》 變量名[容量]
運算符& 他是獲取變量的地址,它的操作數必須是變量。
在面對指針的時候*號就是一個單目運算符,用來訪問指針的值所表示的地址上的變量。可以左右值都可以做。
指針變量用來存放指針(或者理解爲將指針變量視爲地址,用來存放變量。當然,由於指針的特殊性所以有了其他的定義,即:數據類型加*:int * a;)
而且同類型命名的話只有第一個是指針如:int* a, b.那麼就是隻有a是指針,b是int。如果是需要連續定義指針那麼就需要變成int *a,*b,*c;
需要獲取某個變量地址時就可以這樣操作: int a =1; int *p = &a; 雖然星號可以加在數據類型後和變量名前但是C一般加變量前,C++一般加數據類型後。需要注意的是*是屬於數據類型的,而不是變量名。
指針也可以加減,所以也可以由地址來獲取數組數值。(數組的首地址爲數組第一位數的值)
int k = *p *p = k+1
free()對應方法
參考的https://blog.csdn.net/qq_33098049/article/details/89195250
高低地址參考https://blog.csdn.net/oqqHuTu12345678/article/details/82823890
指針補充:
int main() {
// print();
int a = 1;
printf("%d, %d", &a, a); //數字地址
printf("%p, %d", &a, a); //字母地址
return 0;
}
指針是一個unsigned類型的整數。