首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > VxWorks >

打断循环(VxWorks)解决办法

2012-03-02 
打断循环(VxWorks)假如我有个这样的程序C/C++ codevoid test(){char temp0while(1){tempgetchar()/*好

打断循环(VxWorks)
假如我有个这样的程序

C/C++ code
void test(){    char temp=0;    while(1)    {       temp=getchar();      /*好像运行到这里就停下来了,等待出入回车后才行         */       if(temp!= 0)       {          return ;       }       printf("loop.....");    }}

我想让屏幕一直输出loop。。。。(刷屏)

当我按下任意键盘的案件的时候,退出程序。

在网上我查找过相应的资料,但是提示用
#include<conio.h>
这里没有那个函数。。。。
getche()

我还特意看了下,头文件里面有这个函数。。。

编译器是Tornado2_2








[解决办法]
getchar会等待的,有个标准库函数,可以用来检测是否有输入的.
试试_kbhit(),或是查一下C标准库函数.

[解决办法]
用gets()比较好
[解决办法]
如果你是从串口终端输入,那你可以通过read来读取按键值,如:
read (consoleFd, &key, 1);
[解决办法]
用多任务,这个任务只用来显示,另开一个任务用来等待键盘事件,获取键盘事件后置一个标志,显示任务查询发现标志改变后退出循环。
[解决办法]
楼上说得不错

任务间可以通过信号量来传递信息

热点排行