rendered paste body#include <stdio.h>#if (defined(WIN32) || defined(_WINDOWS)) && !defined(__CYGWIN__)#define WIN#include <windows.h>#else#include <termios.h> #include <sys/ioctl.h>#include <stdio.h>#include <unistd.h>#endifint getMaxX(void){ #ifdef WIN CONSOLE_SCREEN_BUFFER_INFO csbi; if (GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &csbi)) { gScreenColumns = (int) csbi.dwSize.X; if (maxX < 80) maxX = 80; } return maxX; #else struct winsize size; if (ioctl(STDIN_FILENO,TIOCGWINSZ, (char*) &size)<0) return 0; else return size.ws_col; #endif}int getMaxY(void){ #ifdef WIN CONSOLE_SCREEN_BUFFER_INFO csbi; if (GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE), &csbi)) { maxY = (int) csbi.dwSize.Y; } return maxY; #else struct winsize size; if (ioctl(STDIN_FILENO,TIOCGWINSZ, (char*) &size)<0) return 0; else return size.ws_col; #endif}int main(void){ printf("width = %d\nheight = %d\n", getMaxX(), getMaxY()); return 0;}