printf 没有调用我的 malloc 版本

问题描述 投票:0回答:1

我覆盖了

malloc
以使用带有 TLSF 分配的静态缓冲区。但是当我调用
printf
时,会调用常规
malloc
而不是我的自定义
malloc

void *malloc(size_t size) __attribute__((weak));
void *malloc(size_t size) {
    return tlsf_malloc(size);
}

我该如何解决这个问题?

c memory-management freertos
1个回答
0
投票
void *malloc(size_t size) __attribute__((weak));

你的malloc版本并不弱。删除此行。

© www.soinside.com 2019 - 2024. All rights reserved.