如何不断刷新屏幕并实时更新[关闭]

2024-05-14

我想在linux上写一个C程序,不断刷新屏幕并实时更新(例如类似于top终端中的命令)。谁能指出我正确的方向。


为了保持它跨终端类型的可移植性,您需要使用一个库,例如ncurses http://www.tldp.org/HOWTO/NCURSES-Programming-HOWTO/。查看该链接,它是一个详尽的教程。

这是一个基本程序,它在屏幕左上角打印不断增加的数字:

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

int main (void)

{
        /* compile with gcc -lncurses file.c */
        int c = 0;
        /* Init ncurses mode */
        initscr ();
        /* Hide cursor */
        curs_set (0);
        while (c < 1000) {
                /* Print at row 0, col 0 */
                mvprintw (0, 0, "%d", c++);
                refresh ();
                sleep (1);
        }
        /* End ncurses mode */
        endwin();
        return 0;
}

这就是刷新窗口的方式。现在,如果您想将数据行显示为top确实如此,您显示的数据需要以有序的数据结构进行维护(根据您的数据,它可能像数组或链接列表一样简单)。您必须根据您的逻辑指示对数据进行排序,并在执行后重新写入窗口(如上例所示)clear() or wclear().

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何不断刷新屏幕并实时更新[关闭] 的相关文章

随机推荐

  • web.config 转换为

    我有针对多个环境的 web config 转换 在配置文件中 我有一个 applicationSettings 部分 其中包含多个设置和值对 我尝试过根据用于匹配名称的语法并更改连接字符串以匹配设置并更改值 但转换失败 这是可能吗 所以我的
  • NotImplementedError:尚未为未构建的模型子类启用“fit_generator”

    我正在使用以下代码 import tensorflow as tf traindata tf keras preprocessing image ImageDataGenerator rescale 1 255 shear range 0
  • 如何填充 Backbone.js 集合的 _byId 数组以便我可以在其上使用“get”?

    我有一个收藏 并且collection models返回模型数组 然而 当我打电话时collection get someId 这个id是模型的idcollection models数组 我得到undefined 看着collection
  • alignas() 对 sizeof() 的影响 - 强制吗?

    这个程序 struct alignas 4 foo int main return sizeof foo 返回 4 其中 GCC 10 1 和 clang 10 1 以及 icc 19 0 1 这让我想知道 这是强制性的alignas 影响
  • 终止 Java RMI 服务器应用程序

    我已经使用 Java RMI 建立了一个客户端 服务器项目 下面我展示部分实现 我 使用启动服务器 ProcessBuilder processBuilder new ProcessBuilder cmd C start B java ja
  • XNA - 保持更长的时间跳得更高

    我正在为我的游戏寻找一种简单的方法 这样当你按住空格键时 你就会跳得更高 当您 点击 时 您不会跳到最大高度 需要有一个最大值 但是 是的 我不知道如何对此进行编程 任何帮助 非常感谢 将给予反馈 谢谢 在处理跳跃的更新函数中 您可以让它跟
  • 如何在 Selenium WebDriver 中获取“ul”类的所有“li”元素

    我是 Selenium webdriver 的新手 我遇到了一个要求 我必须运行我的测试 单击一个部分中的所有链接 有人可以帮我解决这个问题的 Java 代码吗 附上一张显示该特定部分的萤火虫属性的图像 我已经尝试了下面的代码 但它返回了一
  • 如果 FIND 函数在 vba 中找不到任何内容,那么[重复]

    这个问题在这里已经有答案了 我目前正在自动化执行以下步骤的手动流程 1 提示用户打开一个数据文件并打开文件 2 插入4列 3 使用文件中已有的数据创建格式为 DD MM YYYY TEXT 的唯一字符串 其中文本是变量 4 使用 if 语句
  • NTFS 连接点和符号链接有什么区别?

    在高水平上 两者之间唯一明显的区别NTFS 连接点 http msdn microsoft com en us library windows desktop aa365006 aspx and 符号链接 http msdn microso
  • 如何使用scrapy Selector获取节点的innerHTML?

    假设有一些 html 片段 例如 a text in a b text in b b a
  • 为什么我无法在 Mac 12.0.1 (Monterey) 上使用 pip 安装 OpenCV? [复制]

    这个问题在这里已经有答案了 当我尝试使用 python pip 安装 OpenCV 时 它显示了以下内容 Remainder of file ignored Requirement already satisfied pip in Libr
  • IIS Express 停止 Web 应用程序后立即关闭正在运行的站点

    我在使用 Visual Studio 2012 的第一天 当我想停止 IDE 中的应用程序时 应用程序仍在 IIS Express 上运行 我可以浏览和使用正在运行的应用程序 但现在不能了 如果我按下停止按钮 IIS 会立即关闭应用程序 因
  • 如何使gunicorn中的工人过期(并复活)?

    我有一个内存泄漏缓慢的应用程序 由于各种原因 我无法摆脱它 所以我想使用老把戏 让我的工人定期死亡和复活 即在多处理池中使用与 maxtasksperchild 相同的策略 在其他系统 例如 Apache mod wsgi 等 中发现的释放
  • 渲染 ThreeJS 应用程序第一帧时的性能问题

    目前 当我渲染以下内容时 我的 ThreeJS 应用程序的性能受到很大影响第一帧 它会导致 Edge 和 IE 11 浏览器冻结 5 秒 并弹出窗口指示 此窗口没有响应 这可能会吓到我的用户 使用 Chrome 的性能分析器 问题似乎来自几
  • 故事板 Segue 标识符命名约定

    我正在构建一个大型故事板 我想知道是否有人提出了有用的建议Segue 标识符的命名约定 看起来苹果只是在他们的示例中使用了 ShowX 其中 X 是它所显示的视图的名称 到目前为止 我更喜欢使用 PushX 或 ModalX 来跟踪它是哪种
  • Spring Boot 模板未解决

    我正在尝试使用 Spring Boot 和 Thymeleaf 构建一个独立的 Web 应用程序 该应用程序在 IntelliJ IDEA 中运行良好 但我无法单独运行该 jar 显然模板不包括在内 我的项目结构如下 src main ja
  • Inotify linux 监视子目录

    是否可以以这种模式监视目录 storage data usernames Download gt storage data Download 我需要监视每个用户的下载文件夹中是否进行了更改 也许我需要创建所有路径的列表 将其放入数组中 并在
  • 为什么 javac 为最终字段插入 Objects.requireNonNull(this) ?

    考虑下面的类 class Temp private final int field 5 int sum return 1 this field 然后我编译和反编译该类 gt javac version javac 11 0 5 gt jav
  • 新创建的Python虚拟环境中的默认库

    我使用 python 创建了一个新的虚拟环境virtualenv tool virtualenv venv 然后我激活了虚拟环境 source venv bin activate 然后我做了一个pip freeze这就是我得到的 venv
  • 如何不断刷新屏幕并实时更新[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想在linux上写一个C程序 不断刷新屏幕并实时更新 例如类似于top终端中的命令 谁能指出我正确的方向 为了保持它跨终端类型的可移