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

问题描述 投票:0回答:1

我正在使用循环,使用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秒消失一次。

c printf backspace console-output
1个回答
0
投票

printf输出已缓冲。用fflush(stdout)强制其立即输出。同样,\b向左移动光标,但不会删除光标下方的字符。打印"\b \b"将其移回,打印空格,然后再次将其移回。

printf("\b \b");
fflush(stdout);
© www.soinside.com 2019 - 2024. All rights reserved.