我如何使用 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);
我正在使用循环从字符串中删除字符,使用 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);