gojuventusgo
驱动牛犊
驱动牛犊
  • 注册日期2004-04-20
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1613回复:3

delay函数在tc2.0和bc3.1下运行为何不一样?

楼主#
更多 发布于:2004-10-27 15:02

源程序如下:
#include "dos.h"
#include "time.h"
main()
{
 int i;
 time_t t1,t2;
 t1=time(0);
 for(i=0;i<100;i++)
 {
  delay(1000);
  }
  t2=time(0);
  printf("%d",t2-t1);
  getch();
  }
在bc3.1下运行输出100,tc2.0下就输出0了,该如何解释呢?郁闷ing
AllenZh
驱动老牛
驱动老牛
  • 注册日期2001-08-19
  • 最后登录2015-11-27
  • 粉丝19
  • 关注10
  • 积分1316分
  • 威望2387点
  • 贡献值7点
  • 好评度321点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-10-27 16:22
看看这两函数在不同系统下的说明先
1,承接Windows下驱动/应用开发 2,本人原创虚拟鼠标/键盘,触摸屏,虚拟显卡,Mirror驱动,XP无盘的SCSI虚拟磁盘驱动等 3,windows下有尝技术服务(包括BUG调试,员工培训等) 欢迎深圳和海外企业联系.msn:mfczmh@sina.com
gojuventusgo
驱动牛犊
驱动牛犊
  • 注册日期2004-04-20
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-10-27 16:57
在dos和win2k下都试过了,都是这个结果!
难道说tc2不支持delay函数?
zhenlongyang
驱动小牛
驱动小牛
  • 注册日期2004-10-28
  • 最后登录2010-07-26
  • 粉丝1
  • 关注0
  • 积分729分
  • 威望100点
  • 贡献值0点
  • 好评度66点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-10-28 23:13
你说的没错!delay()这个函数在tc2.0下经常会出现严重的运行不准现象,一般来说,越是高档的机器就越容易出问题!本来delay(1000);在BC3.1下表示延迟1秒钟,但是在tc2.0下可能延迟不到一毫秒!并且与具体的机器有很大关系!这可能是因为tc2.0编译器较“老”的缘故吧,不过tc的手册上没有明确的说明delay()函数的具体延迟时间单位,而BC3.1的手册上明确标明其延迟时间单位为“毫秒”,所以若非使用这个函数不可,那么还是用BC编译比较保险。
游客

返回顶部