CLI 模式下的动画“等待”符号

发布于 2024-11-06 18:45:56 字数 194 浏览 0 评论 0原文

我想知道是否有人知道在终端中提供简单动画的方法。例如,在处理文件时,如果能够

显示: “|”、“/”、“-”、“\”、“|”等,

在同一位置以较小的时间间隔 那就太好了,所以它看起来像一个旋转条(表明程序正在运行)。 我知道执行此操作的唯一方法是使用 ANSI 转义字符或使用 ncurses 等外部库。我想知道是否有更好的方法来做到这一点?

I was wondering if someone knows a way to provide simple animations in the terminal. For instance, while processing a file, it would be nice to be able to show:

'|', '/', '-', '\', '|', etc.

at the same place with small time intervals in between, so it would look like a rotating bar (indicating the program is running).
The only way I know of doing this is by using ANSI escape characters or by using external libraries like ncurses. I was wondering if there would be a better way to do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

生生漫 2024-11-13 18:45:56

至少作为第一次尝试,我会尝试这个:

static const char symbols[] = "|/-\\";

for (int i=0; i<10000; i++)
    printf("\r%c", symbols[i%4]);

At least as a first attempt, I'd try this:

static const char symbols[] = "|/-\\";

for (int i=0; i<10000; i++)
    printf("\r%c", symbols[i%4]);
浅唱々樱花落 2024-11-13 18:45:56

这只是对 Jerry 代码的修改,应该按原样编译和运行。

#include <stdio.h>
#include <unistd.h>

const char symbols[] = "|/-\\";
const int num_symbols = sizeof symbols - 1;

int main() {
    int i;
    for (i=0; i<25; i++) {
        printf("\r%c", symbols[i%num_symbols]);
        fflush(stdout);
        usleep(250000);
    }
    printf("\n");
}

This is simply a modification on Jerry's code that should compile and run as-is.

#include <stdio.h>
#include <unistd.h>

const char symbols[] = "|/-\\";
const int num_symbols = sizeof symbols - 1;

int main() {
    int i;
    for (i=0; i<25; i++) {
        printf("\r%c", symbols[i%num_symbols]);
        fflush(stdout);
        usleep(250000);
    }
    printf("\n");
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文