WriteConsoleOutput - Console 화면에 빠르게 출력하는 함수.
C++2019. 12. 9. 15:39
일반적으로 Console에 출력할 때에 printf 혹은 std::cout을 사용하게 된다. 하지만 Console 프로그램 게임에서 전체 이미지 등을 표시하기에는 느리다는 단점이 있다.
이를 해결하기 위한 방법으로는 WriteConsoleOutput 함수가 있다. CHAR_INFO array로 이루어진 buffer에 먼저 쓴 후, 해당 함수에 전달하면 빠르게 콘솔에 출력할 수 있다.
int width = 10;
int height = 10;
CHAR_INFO buffer[width * height];
for (int i = 0; i < width * height; i++) {
buffer[i].Char.UnicodeChar = 'a';
buffer[i].Attributes = 7;
// 7을 입력할 경우 흰색으로 출력.
// 자세한 내용은
// https://docs.microsoft.com/en-us/windows/console/char-info-str
// 참조.
}
COORD pos = { 0, 0 }, size = { width, height };
SMALL_RECT rect = { 0, 0, width, height };
WriteConsoleOutput(GetStdHandle(STD_OUTPUT_HANDLE), buffer, size, pos, &rect);
'C++' 카테고리의 다른 글
Console Project/3. 이미지 (0) | 2019.12.10 |
---|---|
Console Project/2. 출력 버퍼 (0) | 2019.12.09 |
Console Project/1. 화면 (0) | 2019.12.09 |
Console Project (0) | 2019.12.09 |
C++ Image Library - CImg (0) | 2019.12.08 |
댓글()