gpt4 book ai didi

c - 如何更新命令行输出?

转载 作者:IT王子 更新时间:2023-10-29 00:19:37 24 4
gpt4 key购买 nike

在 Linux 中,当 stdout 到命令行时,我想更新特定区域,例如 apt-get 输出:

54% [Waiting for headers] [Waiting for headers]        211 kB/s 3s

百分比kB/s 将每秒更新。

如果我们使用 printf 那么我们将得到多行输出。我试过以下 printf:

printf("\e[1;1H\e[2J");

但它会清除所有输出。

我的问题是如何更新特定区域并保持其他区域稳定?

最佳答案

使用回车。它会将光标移回行首,您可以从中覆盖之前行中的内容。例如:

printf("Hello, world!\rX");

将显示为:

Xello, world!

如果您希望它可见,请确保经常刷新 stdout:

fflush(stdout);

关于c - 如何更新命令行输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15714126/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com