阅读:1613回复:3
delay函数在tc2.0和bc3.1下运行为何不一样?源程序如下: #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 |
|
沙发#
发布于:2004-10-27 16:22
看看这两函数在不同系统下的说明先
|
|
|
板凳#
发布于:2004-10-27 16:57
在dos和win2k下都试过了,都是这个结果!
难道说tc2不支持delay函数? |
|
地板#
发布于:2004-10-28 23:13
你说的没错!delay()这个函数在tc2.0下经常会出现严重的运行不准现象,一般来说,越是高档的机器就越容易出问题!本来delay(1000);在BC3.1下表示延迟1秒钟,但是在tc2.0下可能延迟不到一毫秒!并且与具体的机器有很大关系!这可能是因为tc2.0编译器较“老”的缘故吧,不过tc的手册上没有明确的说明delay()函数的具体延迟时间单位,而BC3.1的手册上明确标明其延迟时间单位为“毫秒”,所以若非使用这个函数不可,那么还是用BC编译比较保险。
|
|