windows下,在C++语言中,怎样通过命令行输入,当用户输入Ctrl+C结束输入?
4个回答
展开全部
引用SoftRender大神的话:
GetKeyState( ) 函数可以测试一个特定的按键是否已经被按下
如果要测试左边的 Ctrl 按键是否已经被按下,那么我们可以用下面语句 :
if( GetKeyState( VK_LCONTROL ) & 0x8000 ) printf( "左边 Ctrl 按键被按下 \n" );
如果要测试字母 C 键是否被按下,可以用下面语句 :
if( GetKeyState( 'C' ) & 0x8000 ) printf( "字母 C 按键被按下 \n" );
如果要同时测试两个按键是否被同时按下,可以用下面语句 :
if( ( GetKeyState( VK_LCONTROL ) & 0x8000 ) && ( GetKeyState( 'C' ) & 0x8000 ) )
printf( "左边 Ctrl 按键和 C 按键同时被按下 \n" );
至于如何在一边检测的同时一边接受用户输入呢,这个我也没想到,希望能股帮到楼主 。
********************************************************************************************************************
检测的时候个人觉得可以使用多线程来控制。开辟一个小线程作为检测器,当检测到同时按下ctrl和c的时候发送信号给主程序让其结束输入。
********************************************************************************************************************
GetKeyState( ) 函数可以测试一个特定的按键是否已经被按下
如果要测试左边的 Ctrl 按键是否已经被按下,那么我们可以用下面语句 :
if( GetKeyState( VK_LCONTROL ) & 0x8000 ) printf( "左边 Ctrl 按键被按下 \n" );
如果要测试字母 C 键是否被按下,可以用下面语句 :
if( GetKeyState( 'C' ) & 0x8000 ) printf( "字母 C 按键被按下 \n" );
如果要同时测试两个按键是否被同时按下,可以用下面语句 :
if( ( GetKeyState( VK_LCONTROL ) & 0x8000 ) && ( GetKeyState( 'C' ) & 0x8000 ) )
printf( "左边 Ctrl 按键和 C 按键同时被按下 \n" );
至于如何在一边检测的同时一边接受用户输入呢,这个我也没想到,希望能股帮到楼主 。
********************************************************************************************************************
检测的时候个人觉得可以使用多线程来控制。开辟一个小线程作为检测器,当检测到同时按下ctrl和c的时候发送信号给主程序让其结束输入。
********************************************************************************************************************
展开全部
GetKeyState( ) 函数可以测试一个特定的按键是否已经被按下
如果要测试左边的 Ctrl 按键是否已经被按下,那么我们可以用下面语句 :
if( GetKeyState( VK_LCONTROL ) & 0x8000 ) printf( "左边 Ctrl 按键被按下 \n" );
如果要测试字母 C 键是否被按下,可以用下面语句 :
if( GetKeyState( 'C' ) & 0x8000 ) printf( "字母 C 按键被按下 \n" );
如果要同时测试两个按键是否被同时按下,可以用下面语句 :
if( ( GetKeyState( VK_LCONTROL ) & 0x8000 ) && ( GetKeyState( 'C' ) & 0x8000 ) )
printf( "左边 Ctrl 按键和 C 按键同时被按下 \n" );
至于如何在一边检测的同时一边接受用户输入呢,这个我也没想到,希望能股帮到楼主 。
如果要测试左边的 Ctrl 按键是否已经被按下,那么我们可以用下面语句 :
if( GetKeyState( VK_LCONTROL ) & 0x8000 ) printf( "左边 Ctrl 按键被按下 \n" );
如果要测试字母 C 键是否被按下,可以用下面语句 :
if( GetKeyState( 'C' ) & 0x8000 ) printf( "字母 C 按键被按下 \n" );
如果要同时测试两个按键是否被同时按下,可以用下面语句 :
if( ( GetKeyState( VK_LCONTROL ) & 0x8000 ) && ( GetKeyState( 'C' ) & 0x8000 ) )
printf( "左边 Ctrl 按键和 C 按键同时被按下 \n" );
至于如何在一边检测的同时一边接受用户输入呢,这个我也没想到,希望能股帮到楼主 。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在main函数的两个参数中实现
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2012-07-01
展开全部
糖水看看
追问
谢谢 可以简单实例一个例子吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询