close
在c中 , sizeof() function可以回傳該變數的位元組數目
for example:
int a;
sizeof(a); //sizeof(a) == 4 , 表示a這個變數為4個bytes.
而如果是ㄧ個array ,
char a[] = "string";
sizeof(a)會等於7 , 因為每個字元為一個bytes , 且最後面會有一個'\0' , 所有共7個bytes.
那如果是pointer呢?
char *b = a;
sizeof(b)會等於....? , 因為在c中 , pointer就像是ㄧ個儲存位址的變數 ,
所以若是在64bits的machine中 , 則每個address為64bits , 所以sizeof(b)會等於8.
但若是32bits的machine , 那麼sizeof(b)則是會等於4.
全站熱搜