#include
Cursor position struct
COORD是Windows API中定义的一种结构,表示一个字符在控制台屏幕上的坐标。其定义为:
typedef struct _COORD {
SHORT X; // horizontal coordinate
SHORT Y; // vertical coordinate
} COORD;
Cursor attribute(光标的属性)
typedef struct _CONSOLE_CURSOR_INFO、
{
DWORD dwSize;// 光标百分比厚度(1~100)
BOOL bVisible;// 是否可见
} CONSOLE_CURSOR_INFO
Get std handle
GetStdHandle是一个Windows API函数。它用于从一个特定的标准设备(标准输入、标准输出或标准错误)中取得一个句柄。
GetStdHandle()返回标准的输入、输出或错误的设备的句柄,也就是获得输入、输出/错误的屏幕缓冲区的句柄。
函数形式:
HANDLEGetStdHandle( DWORDnStdHandle );
其参数nStdHandle的值为下面几种类型的一种:
值
含义
STD_INPUT_HANDLE
标准输入的句柄
STD_OUTPUT_HANDLE
标准输出的句柄
set cursor position
SetConsoleCursorPosition是API中定位光标位置的函数。
实例:
/*用于得到标准输出的语柄,通过操作语柄对光标进行设置;*/
HANDLE hOut;
COORD pos={15,5};
hOut=GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleCursorPosition(hOut,pos);
Get console cursor information
GetConsoleCursorInfo 函数
检索有关指定的控制台屏幕缓冲区的光标的可见性和大小信息。
语法
BOOL WINAPI GetConsoleCursorInfo(
__in HANDLE hConsoleOutput,
__out PCONSOLE_CURSOR_INFO lpConsoleCursorInfo
);
hConsoleOutput
控制台屏幕缓冲区的句柄。该句柄必须具有的 GENERIC_READ 的访问权限。
lpConsoleCursorInfo
指向接收有关该控制台的光标的信息的CONSOLE_CURSOR_INFO结构的指针。
Set console color
SetConsoleTextAttribute是API设置控制台窗口字体颜色和背景色的函数。
BOOL SetConsoleTextAttribute(HANDLE hConsoleOutput, WORD wAttributes);
wAttributes是用来设置颜色的参数:
wAttributes
颜色
对应的值
FOREGROUND_BLUE
字体颜色:蓝
1
FOREGROUND_GREEN
字体颜色:绿
2
FOREGROUND_RED
字体颜色:红
4
FOREGROUND_INTENSITY
前景色高亮显示
8
BACKGROUND_BLUE
背景颜色:蓝
16
BACKGROUND_GREEN
背景颜色:绿
32
BACKGROUND_RED
背景颜色:红
64
BACKGROUND_INTENSITY
背景色高亮显示
128
也就是说SetConsoleTextAttribute函数是靠一个字节的低四来控制前景色,高四位来控制背景色。
Check keyboard hit
kbhit是一个函数,可以用来检查当前是否有键盘输入。
getch() 在执行时,检测按下什么键,如果不按键该函数不返回;是阻塞函数。
用 法:int kbhit(void);
包含头文件: include