sprintf() 没有正确对齐
sprintf() does not align right
我正在使用带有 XC8 (2.10) 的 MPLAB 5.25 为 PIC18F42K47 编译程序。
我想打印右对齐到缓冲区,但输出总是左对齐。
这是我的代码:
uint8_t Str_1[10] = {0};
uint8_t Str_2[10] = {0};
uint8_t Str_3[10] = {0};
sprintf(Str_1, "%3.2f", 12.345); // -> "12.35"
sprintf(Str_2, "%04.2f", 2.345); // -> "2.35"
sprintf(Str_3, "% 3.1f", -123.4); // -> "-123.4"
格式说明符在小数点左侧有一个 宽度 参数。此数字描述的是最小 总数 个字符,而不是小数点前的字符数。
sprintf(Str_1, "%8.3f", 12.345); // -> " 12.345"
我正在使用带有 XC8 (2.10) 的 MPLAB 5.25 为 PIC18F42K47 编译程序。
我想打印右对齐到缓冲区,但输出总是左对齐。 这是我的代码:
uint8_t Str_1[10] = {0};
uint8_t Str_2[10] = {0};
uint8_t Str_3[10] = {0};
sprintf(Str_1, "%3.2f", 12.345); // -> "12.35"
sprintf(Str_2, "%04.2f", 2.345); // -> "2.35"
sprintf(Str_3, "% 3.1f", -123.4); // -> "-123.4"
格式说明符在小数点左侧有一个 宽度 参数。此数字描述的是最小 总数 个字符,而不是小数点前的字符数。
sprintf(Str_1, "%8.3f", 12.345); // -> " 12.345"