C語言系列筆記 指標

2021-10-03 02:18:03 字數 670 閱讀 5409

指標變數的本質是用來放位址的,而一般的變數是放數值的。

例題

int p ,a=;

p=a;

請問p++和(*p)++的數值分別為多少?

*p++:這個本身的數值為1,由於是位址會增加1,所以指標指向數值3了。

(*p)++這個本身的數值為1.由於有個++表示數值會增加,指標不移動,但數值1由於自加了一次變成2。

例題

int x=7;

int *p =&x,**q=p ;

問題:*p為多少? *q為多少?**q為多少 ?

答案: 7 p 7

問題 :**q=&x的寫法可以嗎?

答案:不可以,因為二級指標只能存放一級指標的位址。

三名主義:(重點)

函式名:表示該函式的入口位址

字串常量名:表示第乙個字元位址

移動指標

char *s=「meikanshu」

while(*s)

這個s首先會指向第乙個字母m然後通過迴圈會一次列印出乙個字元,s++是位址移動,列印了乙個字母後,就會移動到下乙個字母!

指標變數兩種初始化

C語言指標系列

從語法的角度看,你只要把指標宣告語句裡的指標名字去掉,剩下的部 分就是這個指標的型別。這是指標本身所具有的型別。讓我們看看例一中各 個指標的型別 1 int ptr 指標的型別是 int 2 char ptr 指標的型別是 char 3 int ptr 指標的型別是 int 4 int ptr 3 ...

C語言筆記系列 六 指標

指標的值是位址,大多系統內部由無符號整數表示,但它是一種新的資料型別,不是整數型別。int n 20 printf d p n,n 分別輸出值和位址 四種宣告等價 intsum int a,int n intsum int int intsum int a,int n intsum int int ...

c語言指標筆記

一 表示這是乙個指標變數,表示乙個變數的位址。二 與 的區別 int a p a 此處 p就是先執行 p,即去取p所指位址的值,相當於 p取出變數a,再進行取位址操作,p即取出a的位址,相當於 a.此處 a就是就是先計算 運算,即先取出a的位址,然後進行 運算,取出位址上的值,即變數a。三 一維陣列...