我如何使用 printf("\b") 使我的控制台输出看起来像打字机?

How can i use printf("\b") to make my console output look like typewriter?

我正在使用循环从字符串中删除字符,使用 printf(\b) 1 乘 1 并在两者之间休眠 0.1 秒。但是当我 运行 代码时它会同时发生。

我确实尝试输入每个 printf,因为我认为循环可能是原因,但输出仍然相同

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

void coolIntro(){
int i;

printf("A Game by Hideo Kojima");

Sleep(800);

for(i=0;i<12;i++){

    printf("\b");

    Sleep(100);

        }

printf("my_name_here");
}

我希望字母以 0.1 秒的时间间隔消失。

printf 输出被缓冲。使用fflush(stdout)强制立即输出。此外,\b 将光标向左移动但不会删除光标下的字符。打印"\b \b"把它移回去,打印一个space,然后再把它移回去。

printf("\b \b");
fflush(stdout);