Это зависит от того, что lcd_puts
делает со своим аргументом.Возможны следующие варианты:
void send_to_lcd(uint8_t count)
{
char str[SOME_CONSERVATIVE_MAX_LENGTH];
sprintf(str, "%d", count); // You might also snprintf() if it's available
lcd_puts(str);
}
Но помните, что str
выходит из области видимости, как только возвращается send_to_lcd()
.Поэтому, если lcd_puts
«запоминает» свой входной аргумент, это будет иметь неопределенное поведение.
В таком случае вам придется вместо этого malloc
использовать строковый буферНо тогда вам нужно будет помнить free()
это в какой-то момент, и все становится довольно грязным.