討論串[問題] 要抓出存放Array Size的記憶體位置
共 3 篇文章
首頁
上一頁
1
下一頁
尾頁

推噓3(3推 0噓 11→)留言14則,0人參與, 最新作者jerrypotato (我是湯姆貓 不是傑利薯)時間14年前 (2009/10/05 21:24), 編輯資訊
1
0
0
內容預覽:
現在課堂上正在複習C++語法. 順便介紹變數宣告時 電腦是如何實際的指派記憶體位置給那些被宣告的變數. 其中有一題是這樣的:(只列出關鍵部份). class A. {. int data;. }. int main(). {. A *arr = new A[17];. //Some Commands
(還有943個字)

推噓0(0推 0噓 1→)留言1則,0人參與, 最新作者adrianshum (Alien)時間14年前 (2009/10/05 21:56), 編輯資訊
0
0
0
內容預覽:
我不太肯定是不是真的有, 但你這裡的做法有一個問題.. 你的 loop 每次是往前跳一個 int 的 size.. 但那個 "17" 未必是在這些位置. 你應該要:. char * bytePtr = (byte*) & arr;. for (int k = sizeof(int); k < 50;

推噓4(4推 0噓 17→)留言21則,0人參與, 最新作者jerrypotato (我是湯姆貓 不是傑利薯)時間14年前 (2009/10/05 22:20), 編輯資訊
0
0
0
內容預覽:
感謝VictorTom以及adrianshum的提示. 我發現我的兩個錯誤了. 1. 我誤會教授的意思,教授所說的是"arr"這個pointer所指的位置. 而不是說"arr"本身的所在位置 ORZ. 2. intptr+1會一次跳4個byte,. 要用charptr+1,才會一個byte一個byt
(還有238個字)
首頁
上一頁
1
下一頁
尾頁