清除多行

标签 c terminal console printf

是否可以清除 C 中的多行并保留其他行。

代码:

Displaysenrsordata
  loop 
    printf("This info stays"); <-stay on screen
    printf("This info stays"); <-stay on screen
    printf("This info Refreshes"); <-update redraw
    printf("This info Refreshes"); <-update redraw
    printf("This info Refreshes"); <-update redraw

基本上我想让一些文本留在同一个地方并重新绘制更新数据而不清除整个屏幕。

最佳答案

如果你在 linux 上工作,那么使用 ncurses .

例子:

#include <stdio.h>
#include <ncurses.h>
  int main (void)
  {
    int a = 0;
    initscr ();
    printw("This info stays \n");
    printw("This info stays\n");
    curs_set (0);
    while (a < 100) {
            mvprintw (3, 4, "%d", a++);
            mvprintw (3, 8, "%d", a++);
            mvprintw (3, 12, "%d", a++);
            refresh ();
            sleep (1);
    }
    endwin();
    return 0;
 }

关于清除多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20594082/

相关文章:

C - 循环内的 fprintf 和 printf 不打印到屏幕

c - 在输入末尾键入预期的声明或语句

ruby-on-rails - Rails中如何判断日志设备的类型

c - 使用 fscanf 读取输入文件在中线失败

terminal - Aria2c - 如何下载大量文件并输出为 0.pdf、1.pdf、2.pdf ...?

c++ - Qt Creator - SFML 链接到控制台项目

javascript - 在没有实例的情况下结束 REPL 服务器

console - 无法在 PyCharm 中使用 IPython 控制台

c - 使用数组做一个自习室预约程序

c - 如何将特定字符串从文本文件复制到 C 中的数组?