我覆盖了
malloc
以使用带有 TLSF 分配的静态缓冲区。但是当我调用 printf
时,会调用常规 malloc
而不是我的自定义 malloc
。
void *malloc(size_t size) __attribute__((weak));
void *malloc(size_t size) {
return tlsf_malloc(size);
}
我该如何解决这个问题?
void *malloc(size_t size) __attribute__((weak));
你的malloc版本并不弱。删除此行。