出力した内容を消去するには、C言語ではいつも何を使用しますか?
C言語では、出力した内容をクリアする方法は以下があります。
- 「\r」または「\b」のエスケープ文字を使う:「\r」はカーソルを現在の行の先頭に動かし、スペースを出力して以前の内容を上書きする。「\b」はカーソルを1文字左に動かし、スペースを1文字出力して以前の内容を上書きする。
サンプルコードです。
#include <stdio.h>
int main() {
printf("Hello, World!");
printf("\r "); // 将光标移动到行起始位置并输出空格
return 0;
}
- ANSIエスケープシーケンスを利用する: ANSIエスケープシーケンスを使用すると、端末上でカーソルの位置や色などの属性を制御できます。指定されたANSIエスケープシーケンスを使用することで、カーソルを特定の位置へ移動させてからスペースを出力し、既存の内容を上書きできます。
ネイティブな日本語で言い換えてください。1つだけで結構です。
#include <stdio.h>
int main() {
printf("Hello, World!");
printf("\033[2K\r"); // 清除当前行
return 0;
}
但し、この方法は端末に出力された内容のみクリアできるもので、ファイルや他のデバイスへの出力についてはクリアできません。