在C語言中,刪除打印的多余內容一般可以通過以下幾種方式實現:
#include <stdio.h>
int main() {
printf("Hello, World!\r");
return 0;
}
system("cls")
來清屏,在Linux系統中,可以使用system("clear")
來清屏。#include <stdio.h>
#include <stdlib.h>
int main() {
printf("Hello, World!");
system("cls"); // 清屏
return 0;
}
SetConsoleCursorPosition
函數將光標移動到指定位置,然后使用FillConsoleOutputCharacter
函數清除多余內容。#include <stdio.h>
#include <windows.h>
int main() {
printf("Hello, World!");
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
COORD pos = { 0, 0 };
SetConsoleCursorPosition(hConsole, pos); // 將光標移動到(0, 0)
CONSOLE_SCREEN_BUFFER_INFO csbi;
GetConsoleScreenBufferInfo(hConsole, &csbi); // 獲取屏幕緩沖區信息
DWORD numCharsWritten;
FillConsoleOutputCharacter(hConsole, ' ', csbi.dwSize.X * csbi.dwSize.Y, pos, &numCharsWritten); // 清除多余內容
return 0;
}
需要注意的是,以上方法只是在控制臺中刪除多余內容,而不會實際刪除已經打印的內容。如果想要徹底刪除已經打印的內容,可以使用清屏函數或者將光標移動到不可見的位置。