指針變量是一種特殊的變量,它不是用來放數據的,而是用來存放另一種變量的地址。這個變量就是指針所指向的目標變量。我們常把指針變量簡稱為指針。可以理解為間接的存放數據,通過中間的過程,來告訴你真正的數據在哪。
指針案例
來自實驗樓的教程:
#include<stdio.h>
int main(){
int a = 100,b = 10;
int *point_1,*point_2; //定義指向整型數據的指針變量 point_1,point_2
point_1 = &a; //把變量 a 的地址賦給指針變量 point_1
point_2 = &b;
printf("a=%d,b=%d\n",a,b);
printf("%p,%p\n",point_1,point_2); //輸出 a 和 b 在內存中的地址
printf("*point_1=%d,*point_2=%d\n",*point_1,*point_2); //輸出變量 a 和 b 的值
return 0;
}
編譯運行之后,可以得到具體的輸出結果,我們通過這個例子來了解指針是怎么回事兒。
輸出結果
解析
-
int *point_1,*point_2;
開頭定義了指向整數型數據的指針變量。
-point_1 = &a;
把變量a的地址賦值給指針變量。 -
printf("%p,%p\n",point_1,point_2);
輸出變量a和b的內存地址。 -
printf("*point_1=%d,*point_2=%d\n",*point_1,*point_2);
輸出指針指向的目標變量的數據。