查看單個文章
  #1  
舊 2014-05-28, 04:07 PM
哈啦 的頭像
哈啦 哈啦 目前離線
論壇管理員
 
註冊日期: 2002-05-28
文章: 23,053
預設 有關C語言的指標

有關指標,我想打個比方來說,請教一下各位先進,這樣理解是否正確?

int *x;
int &y;

在這裡我們用儲物箱來比喻記憶體(內存)。

&y就是指例如第幾號的箱子,而*x則是指第幾號箱子裡的東西是什麼?

這樣比喻對嗎?

再來,int 的屬性是表示已預先留了 4 byte的記憶體空間給 x or y,是嗎?例如一個箱子代表一個byte,int *x 是表示我已留了四個箱子給x,將來等它指定給某位址的陣列後(即幾號到幾號的儲物箱),會將某陣列裡面的內容copy一份出來放進x的箱子裡。還是根本沒有,x只是告訴你將來要去某個位址的記憶體(箱子)去用裡面的內容?x本身不占用任何箱子?

而假設
char *x;
char string[]="hello world!";
x=string;
請問,此時x裡是什麼東西?

希望我說的話大家能看懂我想表達的東西

thanks
__________________
咖啡走路
微博


您是網站站長嗎?歡迎到站長俱樂部 一起討論吧。
按我看版規
code.club
回覆時引用此篇文章