/**
指標運算:
加法:每一次加1 就是所指向的首位址加乙個sizeof(型別)
int a[10];
int *p = a;
*(p+i) = a[0+i];
減法同上 但是同樣要注意範圍的情況
+= -= ++ --
值得注意的是
也有兩個指標做減法 但是兩個指標相減的意思是位址的差值/sizeof(型別)
*的優先順序很高 但是沒++高
*p++常用於陣列的的連續空間操作
**/#include
intmain()
;int
*p ,
*p4;
p = a;
p4 =
&a[4
]; printf
("p0=%p *p0=%d\n"
,p,*p)
;//p0=0060fee8 *p0=1
printf
("p1=%p *p1=%d\n"
,p+1,*
(p+1))
;//p1=0060feec *p1=2
printf
("p4=%p *p4=%d\n"
,p4,
*p4)
;//p4=0060fef4 *p4=5
printf
("p4-p的值=%d\n"
,p4-p)
;//p4-p的值=4 p4-p=16/4 = 4 int是4位元組
for(p;
*p!=
5;p++
)printf
("%d\t"
,*p)
;return0;
}
C語言 指標運算
p a 將變數位址賦值給指標 p array 將陣列位址賦值給指標 p array i 將陣列元素賦值給指標 p1 p2 將指標位址賦值給指標 include 引用函式庫 void main f0889414 f0889414 f0889414 10 10 10 p 1 和 p 意義不相同,前者沒有...
C語言指標運算
int a int p a include intmain int p a printf p p n p printf p 1 p n p 1 printf p d n p p a 0 printf p 1 d p 1 p 1 a 1 return0 輸出 p 000000000062fe00 p ...
C語言指標 指標的運算
include int main void 執行這段 會出現錯誤嗎?如果出現錯誤,是什麼錯誤?分析 printf一種常規的用法就是printf please input a data 這種用法相信很多人都使用過,但是將這種用法分析一下,這樣的用法printf函式接收到的引數是乙個常量字串的首位址,然...