【发布时间】:2012-03-14 12:49:05
【问题描述】:
我正在尝试使用一些代码在 tcpdump 中为我的一个项目记录 malloc,我正在使用的代码如下:
#include <stdlib.h>
unsigned int memCount = 0;
void *my_malloc(size_t size) {
void *p = malloc(size);
memCount = memCount + size;
printf("Memory Allocated :%u \n", size
return p;
}
#define malloc(size) my_malloc(size)
在网上查看了许多类似的问题之后,这似乎应该可以工作,但是我的自定义 malloc 似乎没有被调用。任何帮助将不胜感激,谢谢!
【问题讨论】:
-
您是在代码中覆盖
malloc还是已经编译的代码?另外,请确保您的宏是在全局级别定义的,每次使用malloc都可见