您好、欢迎来到现金彩票网!
当前位置:2019欢乐棋牌 > 执行控制程序 >

在C++里如何在程序执行时按一下空格停止然后按一下空格继续执行

发布时间:2019-07-29 22:20 来源:未知 编辑:admin

  在C++里如何在程序执行时按一下空格停止,然后按一下空格继续执行?如何实现按下ctrl+c后重新运行程序?

  在C++里如何在程序执行时按一下空格停止,然后按一下空格继续执行?如何实现按下ctrl+c后重新运行程序?

  在做解析IP数据包,请问在C++里如何在程序执行时按一下空格停止,然后按一下空格继续执行?如何实现按下ctrl+c后重新运行程序?请给出代码和例子...

  在做解析IP数据包,请问在C++里如何在程序执行时按一下空格停止,然后按一下空格继续执行?如何实现按下ctrl+c后重新运行程序?请给出代码和例子

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  这个样例是一个程序不断输出hello world,按下空格后暂停输出,暂停后只有按下空格才能恢复。按下ESC后退出。

  不过ctrl_c重新运行有点困难。。ctrl_c通常会使程序中断。虽然getch()能截断ctrl_c的指令,使程序不会中断。但是在和kbhit()组合使用时发现kbhit()之后的第一个getch()不能截断ctrl_c的指令。目前我还没想到什么好的方法。。。

  kbhit()函数一般来说用来检测是否有按键按下,否返回0,是返回非零值。不过严格说并不是检测是否有按键按下,你可以自己把这个函数和常规的输入输出函数scanf等组合使用来探究一下。另外kbhit()只是检测并不会将按键信息消除,使得和getch()的组合成为可能。

  getch()获取当前按下的键,返回值是一个整型,可以用int来接收。你可以自己写个简单的程序,按下键后输出getch()的返回值,来查看每个键分别对应着哪个值。貌似用的是ASCII码。

  展开全部楼上两位都会让程序阻塞,getch()和pause都是阻塞语句,程序只会一直停着等待键盘输入。要做你说的这个功能只能新建一个线程,把你原来的功能放到新线程里,

  主程序里只要开始这个线程,然后getch(); 第一次收到的时候suspend你的工作线程,第二次再resume

  展开全部空格控制停止继续,最简单的就是线程控制,至于ctrl+C的话,注册信号:

  return 0;追问看不懂,能不能解释一下?或者给你程序,帮我改一下?追答你建一个控制台的程序,用C++建。

http://nicolashsiung.com/zhixingkongzhichengxu/287.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有