rttread-nano 使用记录:rt_kprintf函数格式化打印无法左对齐
今天用rt_kprintf函数打印输出一个表格,为了表格好看每一列我都使用格式化参数-
负号符号设置为了左对齐,但是发现无法打印,也无法打印浮点数,换成微库的printf确没问题,后来查了一下才知道:
在kservice.c源码中的这些数的实现是为了满足内核的自持能力,在不依赖标准库的情况下rtthread内核也能够正常使用,因此像是rt_kprintf、rt_vsnprintf这类的打印函数仅满足内核使用需要,以减少内核的体积,所以这些函数功能并不是完整版的,例如:无法打印浮点数、无法使用格式化参数设置打印对齐等。
我的打印如下:
解决办法:使用微库。将rt_kprintf内的rt_vsnprintf换为vsnprintf。
如下图所示:
换完之后,就能正常打印了:
ends…