#x27的工作\b';与'\n';在C中

#x27的工作\b';与'\n';在C中,c,formatting,printf,C,Formatting,Printf,在我的一个程序中,我需要从控制台中删除以前写入的字符。 以前控制台上的东西是由下面的代码编写的: printf("Hello World!\n"); 现在我做到了: printf("\b\b\bhwg"); 结果是: Hello World! hwg 而预期产出为: Hello Worlhwg 在之后不使用\n“Hello World”仍然有效 \b是“backspace”,它将光标向后移动一个空格,删除光标下的字符并重新定位行的剩余部分。由于使用了\n换行符,光标被移动到了新行的开头。

在我的一个程序中,我需要从控制台中删除以前写入的字符。 以前控制台上的东西是由下面的代码编写的:

printf("Hello World!\n");
现在我做到了:

printf("\b\b\bhwg");
结果是:

Hello World!
hwg
而预期产出为:

Hello Worlhwg

之后不使用
\n
“Hello World”
仍然有效

\b
是“backspace”,它将光标向后移动一个空格,删除光标下的字符并重新定位行的剩余部分。由于使用了
\n
换行符,光标被移动到了新行的开头。光标在行首时不能向后移动。这与C无关,但与您使用的终端有关。如果您使用电传打字机作为IO设备,您不会期望Backspace工作,对吗?
printf
不理解它只是发送到标准输出流的“控制台”。没有描述提供WA的“情况”。请提供具体答案。