stdin.c

来自「一个MIPS模拟器的源码」· C语言 代码 · 共 51 行

C
51
字号
/* * Copyright (c) 2008 Martin Decky * All rights reserved. * * Distributed under the terms of GPL. * */#include "../stdin.h"#ifdef __WIN32__#include <windows.h>bool stdin_poll(char *key){	HANDLE stdin = GetStdHandle(STD_INPUT_HANDLE);	INPUT_RECORD inrec;	DWORD rd;		do {		if (PeekConsoleInput(stdin, &inrec, 1, &rd)) {			if (rd > 0) {				if (!ReadConsoleInput(stdin, &inrec, 1, &rd))					return false;								if ((rd > 0) && (inrec.EventType == KEY_EVENT)					&& (inrec.Event.KeyEvent.bKeyDown)) {					*key = inrec.Event.KeyEvent.uChar.AsciiChar;					return true;				}			}		} else {			if (!PeekNamedPipe(stdin, NULL, 0, NULL, &rd, NULL))				return false;						if (rd > 0) {				if (!ReadFile(stdin, key, 1, &rd, NULL))					return false;								if (rd > 0)					return true;			}		}	} while (rd > 0);		return false;}#endif /* __WIN32__ */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?