| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2517 人关注过本帖
标题:求助:C语言的退出..
只看楼主 加入收藏
zqy110007
Rank: 3Rank: 3
来 自:外太空
等 级:论坛游民
威 望:6
帖 子:1493
专家分:82
注 册:2008-11-19
结帖率:97.78%
收藏
 问题点数:0 回复次数:10 
求助:C语言的退出..
求助:C语言的退出..
我想得到这个功能,两种退出情况..
当用户按下任意键退出;或者用户不进行任何输入,等待五秒钟后退出.
单个功能我相信大家都会,但是我想把两个同时使用..
望高手相助..
搜索更多相关主题的帖子: C语言 
2008-11-23 23:09
woshiyun
Rank: 1
等 级:新手上路
威 望:2
帖 子:348
专家分:0
注 册:2008-6-16
收藏
得分:0 
程序这样写有很漏洞,不过满足你的要求够了。

#include <process.h>    /* _beginthread, _endthread */
#include <time.h>
#include <conio.h>

int returnflag = 0;

void CheckTime(void *p)
{
    double bgn,end;
    bgn = end = clock();
    while(end-bgn<=5000)end=clock();
    returnflag=1;
}

void CheckKey(void *p)
{
    if(getch())returnflag=1;
}

void main()
{
    _beginthread( CheckTime, 0, NULL );
    _beginthread( CheckKey, 0, NULL );
    while(!returnflag);
}
2008-11-24 08:37
zqy110007
Rank: 3Rank: 3
来 自:外太空
等 级:论坛游民
威 望:6
帖 子:1493
专家分:82
注 册:2008-11-19
收藏
得分:0 
非常感谢,我看看..

每个人都是蛤蟆,只是井的大小不同罢了.
沙石下的泉水,挖得越深,泉水越清.
2008-11-24 12:04
zqy110007
Rank: 3Rank: 3
来 自:外太空
等 级:论坛游民
威 望:6
帖 子:1493
专家分:82
注 册:2008-11-19
收藏
得分:0 
以下是引用woshiyun在2008-11-24 08:37的发言:

程序这样写有很漏洞,不过满足你的要求够了。
#include <process.h>
#include <time.h>
#include <conio.h>
int returnflag = 0;
void CheckTime(void *p){
  double bgn,end;
  bgn = end = clock();
  while(end-bgn<=3000)
    end=clock();
  returnflag=1;
}
void CheckKey(void *p){
  if(getch())returnflag=1;
}
void main(){
  _beginthread(CheckTime, 0, NULL );
  _beginthread(CheckKey, 0, NULL );
  while(!returnflag);
}

我想问问,这是怎么实现的功能?
能不能给我加一点注释?

每个人都是蛤蟆,只是井的大小不同罢了.
沙石下的泉水,挖得越深,泉水越清.
2008-11-24 12:07
zqy110007
Rank: 3Rank: 3
来 自:外太空
等 级:论坛游民
威 望:6
帖 子:1493
专家分:82
注 册:2008-11-19
收藏
得分:0 
帮忙解答一下...

每个人都是蛤蟆,只是井的大小不同罢了.
沙石下的泉水,挖得越深,泉水越清.
2008-11-24 17:12
woshiyun
Rank: 1
等 级:新手上路
威 望:2
帖 子:348
专家分:0
注 册:2008-6-16
收藏
得分:0 
这是最简单的多线程。
如果你知道线程,那没有什么好解释的,如果不知道,那可以百度一下多线程先看看。
2008-11-24 17:23
zqy110007
Rank: 3Rank: 3
来 自:外太空
等 级:论坛游民
威 望:6
帖 子:1493
专家分:82
注 册:2008-11-19
收藏
得分:0 
哦.
我去看看啊~
谢谢你了

每个人都是蛤蟆,只是井的大小不同罢了.
沙石下的泉水,挖得越深,泉水越清.
2008-11-25 20:19
lingluoz
Rank: 2
来 自:苏州科技学院
等 级:新手上路
威 望:4
帖 子:749
专家分:0
注 册:2008-2-2
收藏
得分:0 
好强。。。

Murphy's Law :
If there are two or more ways to do something, and one of those ways can result in a catastrophe, then someone will do it.
2008-11-25 22:38
zqy110007
Rank: 3Rank: 3
来 自:外太空
等 级:论坛游民
威 望:6
帖 子:1493
专家分:82
注 册:2008-11-19
收藏
得分:0 
非常同意楼上的观点!

每个人都是蛤蟆,只是井的大小不同罢了.
沙石下的泉水,挖得越深,泉水越清.
2008-11-25 23:02
我不是郭靖
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:494
专家分:6
注 册:2006-10-4
收藏
得分:0 
用中断也可以

2008-11-25 23:30
快速回复:求助:C语言的退出..
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.040092 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved