Re: [問題] 要抓出存放Array Size的記憶體位置
看板C_and_CPP (C/C++)作者jerrypotato (我是湯姆貓 不是傑利薯)時間16年前 (2009/10/05 22:20)推噓4(4推 0噓 17→)留言21則, 6人參與討論串3/3 (看更多)
感謝VictorTom以及adrianshum的提示
我發現我的兩個錯誤了
1. 我誤會教授的意思,教授所說的是"arr"這個pointer所指的位置
而不是說"arr"本身的所在位置 ORZ
2. intptr+1會一次跳4個byte,
要用charptr+1,才會一個byte一個byte慢慢跳。
以下是我修改過的code
char *byteptr = (char *) (arr) //強制取出arr "所指的" 的記憶體位址
for (int k = 0; k < 50; k++ )
cout << *((int *)(byteptr - k)) << endl
//把arr"所指的"位址之前的記憶體全部掃瞄過一遍
以下是輸出結果:
0
0
0
0
17
...
...
看來"17"這個數字 是位於arr"所指的"記憶體位置的前四個byte
已經找到初步的解法了 在此感謝大家的協助<(_ _)>
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.243.205
※ 編輯: jerrypotato 來自: 140.112.243.205 (10/05 22:21)
推
10/05 22:23, , 1F
10/05 22:23, 1F
→
10/05 22:24, , 2F
10/05 22:24, 2F
→
10/05 22:25, , 3F
10/05 22:25, 3F
→
10/05 22:25, , 4F
10/05 22:25, 4F
→
10/05 22:25, , 5F
10/05 22:25, 5F
→
10/05 22:27, , 6F
10/05 22:27, 6F
→
10/05 22:34, , 7F
10/05 22:34, 7F
→
10/05 22:35, , 8F
10/05 22:35, 8F
→
10/05 22:35, , 9F
10/05 22:35, 9F
→
10/05 22:36, , 10F
10/05 22:36, 10F
→
10/05 22:37, , 11F
10/05 22:37, 11F
→
10/05 22:37, , 12F
10/05 22:37, 12F
推
10/05 22:45, , 13F
10/05 22:45, 13F
→
10/05 22:45, , 14F
10/05 22:45, 14F
→
10/05 22:45, , 15F
10/05 22:45, 15F
推
10/05 22:48, , 16F
10/05 22:48, 16F
推
10/06 13:11, , 17F
10/06 13:11, 17F
→
10/06 13:11, , 18F
10/06 13:11, 18F
→
10/06 13:11, , 19F
10/06 13:11, 19F
→
10/06 13:12, , 20F
10/06 13:12, 20F
→
10/06 13:13, , 21F
10/06 13:13, 21F
討論串 (同標題文章)
完整討論串 (本文為第 3 之 3 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章