【C/C++】关于'\b'的简单探究

最重要的一点,'\b'的意思不是退格,而是把光标前移一位。在输出'\b'的时候,本质上字符串是不会有变化的。
而对于"\b\n"这样的输出信息,由于'\n'也仅仅是光标的移动操作(把光标移动到下一行开头),因此'\b\n'不会修改任何后面的字符。

做一个实验(在Windows环境下,为了方便使用了windows.h的函数)

#include<iostream>
#include<windows.h>
using namespace std;
int main(){
	cout<<"abcd";
	Sleep(1000);
	cout<<"\b";//无反应,此时光标在c的位置
	Sleep(1000);
	cout<<"e";//把最后的d改成e 
	Sleep(1000);
	cout<<"\b\n";//无反应
}

可以看到,隔了两秒的时间再输出e。

posted @ 2022-04-24 18:24  计算机知识杂谈  阅读(539)  评论(0编辑  收藏  举报