Выравнивание по правому краю с использованием printf_P в C - PullRequest
2 голосов
/ 30 мая 2020

Я пытаюсь получить результат:

Score: 
    0

, но мой результат продолжает выходить как

Score:        0

это то, что я реализовал:

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

мы записываем оценку в Putty, от AVR до серийника. Что я делаю не так?

1 Ответ

3 голосов
/ 30 мая 2020

Q: Если вы хотите «0» в отдельной строке ... то не следует ли вам поместить соответствующий `\ n 'в свой оператор формата?

Q: Если вы хотите, чтобы он был выровнен по правому краю в столбце 6, тогда ваш оператор формата не должен быть %6?

ПРИМЕР: printf_P(PSTR("Score :\n%6d\n"), get_score());

PS:

Как вы, наверное, знаете, printf_P () не является стандартным для C; это специфика AVR c.

...