[问题] hw4 内存位置

楼主: b98902080 (虚数)   2011-11-29 20:26:18
请问
我BufMgr的变量分配顺序是
Page* bufPool;
FrameDesc** bufDescr;
(中间有二、三个变量)
BufHashTbl* hashtable; //hashtable是最后一个变量
我中间一直内存有问题
我在BuffMgr::BufMgr中把上面三变量的内存位置印出来
以下是我用new来拿到的位置(照new的顺序)
bufPool: 0x2136158
bufDescr: 0x213b160
hashtable: 0x213b210
&bufPool: 0x2136130
&bufDescr: 0x2136138
&hashtable: 0x2136158
bufPool的位置每次都会被bufPool压到,导致内存出问题
我改用malloc也有同样问题
目前可能把new的顺序变一下,第一个new的都一定会压到hashtable
想问比较懂C的人这是怎么回事
可能不是功课主要重点,但还是想问一下
谢谢

Links booklink

Contact Us: admin [ a t ] ucptt.com