#include#includeint main()
; //以十六進製制列印陣列的首位址 這裡a與&a,&a[0]一樣的結果
printf("%x\n",a);
printf("%x\n",&a);
printf("%x\n",&a[0]);
//以十進位制列印陣列的首位址
printf("%d\n",a);
//輸出第乙個陣列元素的值
printf("%d\n",a[0]);
//陣列在記憶體是連續排列
printf("%d\n",sizeof(a));//5*4=20位元組 ,//是20個不是21,\0只有對字串才生效
//求陣列多少個元素,這個是最標準的求法
printf("%d\n",sizeof(a)/sizeof(int));//5個元素
//陣列的本質:一片連續的記憶體空間
for(int i=0;i<5;i++)
//對乙個大小為n,型別為int的陣列,其佔據的記憶體大小為:
//n*sizeof(int)-->n*4
//p+(m-1)*sizeof(int)//從0開始所以要減1
//乙個程序不能讀寫另外乙個程序
return 0;
} int main1()
}
C語言 取陣列首位址
我們先看下面這段 include intmain int p int arr 1 arr操作的是整個陣列,返回的指標指向整個陣列,arr 1偏移的是整個陣列的長度。printf p p n arr,arr printf p p n arr 1,arr 1 printf d d n p 1 p 1 p...
陣列首位址
指標可以,開始我們說了指標可以認為是游離的,所以他本身的值可以變化,而自加就是讓指標的首位址變化,但是陣列是固定的,要變化乙個陣列的首位址就要用到雙指標。unsigned char p1 f 30 unsigned char p1 b 300 void change page unsigned ch...
C語言二維陣列的指標及首位址問題
若arr是一維陣列名,我們知道 arr就是arr 0 就是 arr 0 因為arr是陣列的首位址,arr就是取首位址所指元素,就是陣列的第乙個元素。同樣的道理,arr是二維陣列名時,arr也是取arr的第乙個元素,但是此時arr所指的元素是乙個一維陣列,所以,實際上arr所指元素是一維陣列的首位址。...