在C中使用printf_P进行右对齐

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

我正在尝试获取以下内容的输出:

Score: 
    0

但是我的输出不断地像

Score:        0

这是我已经实现的:

move_cursor(30,4);
printf_P(PSTR("Score : %8d\n"), get_score());
move_cursor(37, 8);

我们正在用腻子(从AVR到序列号)编写乐谱。我在做什么错?

c printf avr avr-gcc right-align
1个回答
2
投票

问:如果您想在单独的行上加上“ 0” ...那么您是否不应该在格式语句中放入匹配的“ \ n”呢?

Q:如果您希望它在第6列右对齐,那么格式语句不应该是%6吗?

示例:printf_P(PSTR("Score :\n%6d\n"), get_score());

PS:

您可能已经知道,“ printf_P()”不是标​​准的C;它是特定于AVR的。

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