CTRL +a = ASCII 码 1 (笑脸)
CTRL +b = ASCII 码 2 (还是笑脸)
...
CTRL +第几个字母,就是ASCII码表里的第几个。
s是第十九个字母,q是第十七个字母
读取方式(我就简写了,没写main(),必要的头文件写了):
#include
char a;
a=getch(); // 接收字符a,并判断
if(a==(char)19)
// 读取CTRL+s。强制类型转换,因为在键盘上没法打出ASCII码第十九个字符。。。
{
......
}
else if(a=(char)17) // 读取CTRL+q
{
......
}
else // 其他
{
......
}
......
如果你想随时输入CTRL+s,随时读取,可以使用kbhit()函数(在conio.h里)
其格式为:
int kbhit(void)
返回从键盘上读取到的字符数量(在缓冲区的字符数量)(即使你没有用scanf或者其他的什么函数读取)
用一个循环,定期读取存在缓冲区的字符,用法如下:
char a;
while(1)
{
if(kbhit())
{
a=getch();
}
}
循环可以自己改,这样不受限制,随时可以读。
求采纳~