LINUX.ORG.RU

Прыгает каретка при \r в printf


0

0

В цикле выводиться целое число

printf("%i\r", count);

Когда количество выводимых символов у числа меньше 6 то видно как каретки прыгает на начало строки и обратно. Выглядит как то не очень. Когда их 7 и больше, то видно как каретка стоит в начале строки и не дёргается.

Можно ли как это исправить?

Заранее спасибо!!!

★★★★★

...поправка, при 8 и больше пргыет и меньше 7 так же прыгает, а когда 7 нет

cyclon ★★★★★
() автор топика

Как-то так вобщем...

#include <stdio.h>
#include <ncurses.h>

int main(void) {
  int count;
  setupterm((char *)0, 1, (int *)0);
  char* g = tigetstr("civis");
  if(g) putp(g);

  for(count=0; count<100000; count++) {
    printf("%i\r", count);
  }
  
  g=tigetstr("cnorm");
  if(g) putp(g);
}

anonymous
()

А еще можно ESC-последовательности баша запользовать.

anonymous
()

> Можно ли как это исправить?

можно, исправляйте! ncurses спасёт отца русской демократии.

beastie ★★★★★
()

Сделай перерыв между выводами на какое-нибудь осмысленное дело, не выводи чаще 10 раз в секунду - глаза резать и перестанет.

alexsaa
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.