gotoxy
是一個非標準的 C++ 函數,通常用于在控制臺上設置光標位置
SetConsoleCursorPosition
函數實現類似功能。這是一個 Win32 API 函數,需要包<windows.h>` 頭文件。示例代碼:
#include<iostream>
#include<windows.h>
void gotoxy(int x, int y) {
COORD coord = {x, y};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);
}
int main() {
gotoxy(5, 5);
std::cout << "Hello, World!"<< std::endl;
return 0;
}
\033[
開始,后跟一些參數和一個字母(如 H
)表示光標位置。示例代碼:
#include<iostream>
void gotoxy(int x, int y) {
std::cout << "\033[" << y << ";" << x << "H";
}
int main() {
gotoxy(5, 5);
std::cout << "Hello, World!"<< std::endl;
return 0;
}
為了在不同操作系統中實現兼容性,可以根據編譯器宏定義來選擇合適的實現方式。例如:
#include<iostream>
#ifdef _WIN32
#include<windows.h>
void gotoxy(int x, int y) {
COORD coord = {x, y};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);
}
#else
void gotoxy(int x, int y) {
std::cout << "\033[" << y << ";" << x << "H";
}
#endif
int main() {
gotoxy(5, 5);
std::cout << "Hello, World!"<< std::endl;
return 0;
}
這樣,代碼將根據當前操作系統自動選擇合適的實現方式。