#include static void BlankLine(HANDLE hOut, int y) { DWORD NumWritten; COORD c; c.X = 0; c.Y = y; FillConsoleOutputCharacter(hOut, ' ', 80, c, &NumWritten); } void c_WinUI_Console_ClearScreen() { HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); for (int i=0; i<25; i++) { BlankLine(hOut, i); } c_WinUI_Console_GotoXY(0, 0); } void c_WinUI_Console_WriteStr(const char* str) { if (!str) return; DWORD NumWritten; WriteConsole(GetStdHandle(STD_OUTPUT_HANDLE), str, strlen(str), &NumWritten, NULL); } void c_WinUI_Console_WriteXY(int x, int y, const char* s, WORD attr) { if (!s) return; HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); COORD c; DWORD result; c.X = x; c.Y = y; SetConsoleTextAttribute(hOut, attr); SetConsoleCursorPosition(hOut, c); WriteConsole(hOut, s, strlen(s), &result, NULL); } void c_WinUI_Console_GotoXY(int x, int y) { COORD c; c.X = x; c.Y = y; SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), c); } void c_WinUI_Console_BlankLine(int y) { HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); BlankLine(hOut, y); }