C++怎么实现在循环中按键盘暂停?
发布网友
发布时间:2024-10-21 22:47
我来回答
共4个回答
热心网友
时间:2024-11-22 07:44
用线程 给你个参考程序吧~!
#include<windows.h>
#include<iostream.h>
#include<conio.h>
DWORD WINAPI GetChar(LPVOID lpParameter);//thread data
char c=-1;
DWORD WINAPI GetChar(LPVOID lpParameter)
{
while(1)
{
c=getch();
}
}
void main()
{
HANDLE thread;
//创建线程
thread=CreateThread(NULL,0,GetChar,NULL,0,NULL);
do
{
cout<<"abc"<<endl;
Sleep(1000);
}
while(c!='N');
}
你可以自己改一下,监控的键值。
热心网友
时间:2024-11-22 07:44
给你提供一个思路(我的经验保证):
利用windows的消息处理机制,在程序的pretranslatemessage里面加入自己的处理流程。
给你找了几篇pretranslatemessag的文章
http://hi.baidu.com/bingkafei_1200/blog/item/e923e2d422dbdc06a08bb744.html
但是最好还是先弄明白windows的消息机制,基本上就搞定它了。
热心网友
时间:2024-11-22 07:45
不知道你是用什么写的
Win32程序的话只要添加一个WM_KEYDOWN的消息响应函数就好了。
控制台程序的话就开线程自己检测吧
如果这两个还不能满足要求,就只有用钩子函数了。自己网上搜一下,资料挺多,挺好用的。
热心网友
时间:2024-11-22 07:45
强势围观