Я разработал простое приложение NCurses, которое я использую для целей отладки. Он постоянно печатает и обновляет некоторые переменные и их значения в окне терминала.
Я использую функцию printw
для печати имен переменных и их значений следующим образом:
while( ... )
{
clear();
printw("var_1: %d\n", var_1);
printw("var_2: %d\n", var_2);
printw("var_3: %d\n", var_3);
...
refresh();
}
Это производит вывод как это:
var_1: 10
var_2: 20
var_3: 30
...
Поскольку этот фрагмент кода находится внутри цикла, я постоянно переписываю весь экран, как имена переменных, так и их значения.
Обратите внимание, что единственными данными, которые необходимо обновить, являются значения, поскольку имена переменных всегда одинаковы, поэтому нет необходимости перезаписывать их снова и снова на каждой итерации.
Как мне избежать переписывания фрагментов текста, которые не меняются в моем приложении NCurses?