C語言 初識指標

2021-08-04 07:44:55 字數 987 閱讀 1602

指標變數

格式一:

型別名 *指標變數名1,*指標變數名2...

int *p; char *ch; int a;char c;

指標的作用都一樣的,都是用來存放位址的,為什麼還要分型別的原因是指標變數p只能存放整型變數位址,指標變數ch只能存放字元變數位址。

如何讓乙個指標存放乙個變數位址呢?

p=&a; ch = &c;

&:叫做取址符 *叫指標運算子

變數的定義就是給其開闢儲存單元的過程。

任何變數都有自己的儲存位址。

指標就是用來存放變數位址的。

指標也是個變數。

指標也需要個位址

專門用來存放指標的位址,他就是指向指標的指標。

int **p ,*s

p = &s;

**p就是乙個指向指標的指標。它裡面只能存放同種資料型別的指標的位址。

c語言提供了乙個稱做「間接訪問運算子」,的單目運算子:「*」當指標變數中存放了乙個確切的位址值是,就可以用「間接運算預算符」通過指標來引用改位址的儲存單元。

如:int *p,i=10,j;

p = &i; //10 指向i的位址

j=*p; //10 把p指向的位址的值賦給j

j=i; <--------> j=*(&i);

再如:

int *p,k=0;

p=&k;

*p=100;

*p+=1;

注意:當*p出現在賦值號左邊時,代表的是指標所指的儲存單元,當*p出現在賦值號右邊時,代表的是指標所指的儲存單元的內容。

*p+=1; 給指標所指的空間裡的值+1並返回了,,

++*p;*和++的運算優先順序相同,從右到左結合所以 ++(*p)

(*p)++; 不能省略()否則造成位址的移動出現錯誤

利用指標來輸入兩個數,並且取出其中最小值,

#include

main()

初識C語言 指標

記憶體是電腦上特別重要的東西,計算機中所有的程式的執行都是在記憶體中進行的。所以為了有效的使用記憶體,就把記憶體劃分為乙個個小的記憶體單元,每個記憶體單元的大小是1位元組。為了能夠有效訪問到記憶體的每個單元,就給記憶體單元進行了編號。這些編號被稱為該記憶體單元的位址。位址即編號。那麼取出來的位址怎麼...

C語言指標初識

定義指標變數,在變數名前面加星號 格式為 int a datatype pointname int p p a 或者 int a datatype pointname value int p a 定義指標變數時必須帶 給指標變數賦位址值時不能帶 等於乙個位址即可改變指標指向。1 定義普通變數 2fl...

c語言printf和指標初識

1.printf是行緩衝 滿一行才輸出 遇到 n 或者 r 會輸出 scanf 和printf 用的同一緩衝區,當 printf 與scanf 連用時會輸出。因此在寫 printf 時要加 n 2.當執行程式發現段錯誤時,可以在每一行 下面加除錯資訊 printf s d n func line 這...