rttread-nano 使用记录:rt_kprintf函数格式化打印无法左对齐

rttread-nano 使用记录:rt_kprintf函数格式化打印无法左对齐


今天用rt_kprintf函数打印输出一个表格,为了表格好看每一列我都使用格式化参数-负号符号设置为了左对齐,但是发现无法打印,也无法打印浮点数,换成微库的printf确没问题,后来查了一下才知道:

在kservice.c源码中的这些数的实现是为了满足内核的自持能力,在不依赖标准库的情况下rtthread内核也能够正常使用,因此像是rt_kprintf、rt_vsnprintf这类的打印函数仅满足内核使用需要,以减少内核的体积,所以这些函数功能并不是完整版的,例如:无法打印浮点数、无法使用格式化参数设置打印对齐等。

我的打印如下:

解决办法:使用微库。将rt_kprintf内的rt_vsnprintf换为vsnprintf。

如下图所示:

在这里插入图片描述

换完之后,就能正常打印了:


ends…

猜你喜欢

转载自blog.csdn.net/qq153471503/article/details/130868955
今日推荐