2013-03-26 60 views
0

我想获取当前控制台大小的行和列。使用GetConsoleScreenBufferInfo功能,我可以得到一个CONSOLE_SCREEN_BUFFER_INFO结构有以下几点:获取当前控制台大小

typedef struct _CONSOLE_SCREEN_BUFFER_INFO { 
    COORD  dwSize; 
    COORD  dwCursorPosition; 
    WORD  wAttributes; 
    SMALL_RECT srWindow; 
    COORD  dwMaximumWindowSize; 
} CONSOLE_SCREEN_BUFFER_INFO; 

最接近的领域是顾名思义获取最大窗口大小dwMaximumWindowSize。我有没有办法获取当前的窗口大小(即行数和列数)?

+0

'dwSize'输出是什么? – 2013-03-26 20:41:26

+0

这不是什么dwSize参数? – Luke 2013-03-26 20:41:48

+0

好吧,你一定会这么想的!不幸的是,dwSize指的是当前缓冲区大小对窗口大小的影响不大。 – R4D4 2013-03-26 20:42:56

回答

1

窗口的大小是在srWindow字段:

srWindow

甲SMALL_RECT结构,它包含的显示窗口的左上角和右下角的控制台屏幕缓冲器坐标。

相关问题