#include
#include
intmain()
;printf
("%d\n"
,sizeof
(arr));
//sizeof計算陣列的大小,char型別為乙個位元組,6*1=6
printf
("%d\n"
,sizeof
(arr+0)
);//arr為首元素位址,arr+0依然是首元素位址,為4/8
printf
("%d\n"
,sizeof
(*arr));
//arr為首元素位址,*arr就是首元素,在char型別下為1個位元組
printf
("%d\n"
,sizeof
(arr+1)
);//第二個元素位址,4
printf
("%d\n"
,sizeof
(arr[1]
));//1
printf
("%d\n"
,sizeof
(&arr));
//&arr是陣列的位址,為4/8
printf
("%d\n"
,sizeof(*
&arr));
//對陣列arr的位址進行解應用操作,char arr裡面6個字元,為6
printf
("%d\n"
,sizeof
(&arr+1)
);//跳過整個陣列,為4/8
printf
("%d\n"
,sizeof
(&arr[0]
));//第乙個元素的位址,為4/8
printf
("%d\n"
,sizeof
(&arr[0]
+1))
;//第二個元素的位址,為4/8
system
("pause");
return0;
}
陣列 字串的大小
首先,先看這樣一段程式 include int main printf p n arr printf d n arr return 0 執行的結果 這裡,printf p n arr 指的是列印陣列arr的首元素arr 0 的位址,為00d5f14 printf d n arr 指的是列印指向陣列a...
大小端的判斷
在計算機系統中,我們以位元組為儲存單位,每個位址的單元都是對應的乙個位元組,乙個位元組為8bit.在c語言中,不僅僅是乙個位元組來儲存資料,除了乙個位元組的char,還有兩個位元組的short,四個位元組的int,另外對於位數大於8位的處理器,例如32位處理器。由於暫存器的寬度大於乙個位元組的長度,...
大小端的判斷
1 什麼是大小端?大端 資料的低位儲存在記憶體的高位址中,而資料的高位儲存在記憶體的低位址處 小端 資料的低位儲存在記憶體的低位址中,而資料的高位儲存在記憶體的高位址處 2 為什麼要有大小端?為什麼會有大小端模式之分呢?這是因為在計算機系統中,我們是以位元組為單位的,每個位址單元都對應著乙個位元組,...