感谢您的答复和答案。这个问题被编辑是因为它似乎我以前的所有问题都非常模糊,并没有给出我想要实现的具体细节和我的目标。如何知道堆结束的地址?
更新后的问题:
使用在Linux平台下的C语言,有什么可能的方式来确定我的应用程序使用的堆的大小。例如像..
void printHeapReport()
{
/* implementation here to print the heap size */
}
int main()
{
char *ptemp = NULL;
p = (char*)malloc(10); /* 10 bytes */
printHeapReport();
return 0;
}
该应用程序将在标准输出画面输出:
Debug Report:
--------------
Heap: 10 bytes
--------------
我问这个,因为我要在其中创建应用程序调试报告,将打印堆的大小。
请指教。
非常感谢。
老问题:
用C ASM inline函数,是有可能知道堆的开始和堆结束的地址?还有程序结束的地址?
asm(<assembly code>);
因此,使用此代码我可以确定在我的应用程序中使用的堆的大小。这种方法对于确定堆的大小是否有效?
请指教。
非常感谢。
“程序结束”是什么意思?代码段结束?或者最后一节结束?或者汇编程序结束? – Max 2011-01-21 05:07:44
嗨,最高,我的意思是代码部分。谢谢 – domlao 2011-01-21 05:09:05
如果你能告诉我需要这样做的好理由,我会留下深刻的印象。 – GManNickG 2011-01-21 05:13:14