Как эмулировать динамическое отображение в C-коде

Я написал код, который может конвертировать любое входное целое число в эквивалентный светодиодный дисплей. Я хочу передать время моей системы в качестве входа для этой функции и получить светодиодный дисплей для того же.

Пример: рассмотрим эти 2 входа:

(system time = 10:12:00)
(system time = 11:10:04)

Проблема:

Вывод на экран должен перезаписать предыдущий вывод для "10:12:00" на "11:10:04", чтобы у пользователя приложения было ощущение динамического отображения "на месте".

Прошу вас дать подсказку о том, как этого добиться, в коде "С". (Моя платформа GNU/Linux)

Благодарю.

С уважением,

Сандип Сингх

2 ответа

Обычный способ что-то вроде:

printf("\r%s", time_string);

Что касается получения времени в виде строки, вы можете получить время с помощью time(), преобразовать в местное время, разбитое на поля с localtime и поместите формат по вашему выбору в строку с strftime,

Напишите свою строку и затем столько пробелов ('\b'), сколько необходимо, чтобы стереть эту строку перед тем, как написать другую.

Другие вопросы по тегам