没有内存分配的sprintf

时间:2017-02-17 00:18:45

标签: c printf

有没有办法在不依赖内存分配的情况下使用sprintf?我正在使用嵌入式系统,不想引入堆。我的应用程序中的以下代码要求我定义_sbrk

char numBuffer[10];

sprintf(numBuffer, "%04x", value);

1 个答案:

答案 0 :(得分:4)

sprintf在内部使用堆。因此,最好的办法是编写一个没有版本的版本。如果您只使用%d,%x和%s格式说明符,则您不需要任何动态内存。