在C/C++ 程序中怎样延时?
在C/C++ 程序中怎样使程序延时一段时间再操作?比如说延时1/100秒?
我以前用的是循环函数:
long int i;
for(i=6000000000;i>0;i--)
{
;
}
虽然它可以延时,但是它的可移值性很差,在不同频率的CPU上延长的时间不同。
(C/C++中好象没有延时用的函数)
问题点数:30、回复次数:21Top
1 楼wsa_socket()回复于 2002-03-15 15:29:09 得分 5
delay可以吧Top
2 楼neptunez()回复于 2002-03-15 15:29:11 得分 5
tc delay(10)
vc Sleep(10)
..Top
3 楼wsa_socket()回复于 2002-03-15 15:31:45 得分 0
参数单位好像是毫秒
记不清了Top
4 楼hncal(利剑)回复于 2002-03-15 15:33:42 得分 5
Sleep(1000)延时一秒Top
5 楼songhonda(小笨鼠)回复于 2002-03-15 15:56:54 得分 0
delay()和sleep()两个函数都可以起到延时的作用,自己查查这两个函数的具体用法Top
6 楼zsf345(飞舟)回复于 2002-03-15 16:13:21 得分 3
对就是用delay()函数,具体的自己去查。Top
7 楼gnuljf(柴门(也有人叫我废柴^_^))回复于 2002-03-15 16:32:21 得分 0
sleep()的单位是秒,而delay()的单位是秒。
在TC中,这两个函数都有。Top
8 楼gnuljf(柴门(也有人叫我废柴^_^))回复于 2002-03-15 16:36:01 得分 5
刚才有点错了,delay()的单位是毫秒,不是秒:)
sleep(1)延时1秒,delay(1000)延时1秒!!Top
9 楼cniou(混混)回复于 2002-03-15 17:30:14 得分 0
对不同的平台有不同的方法
WIN32提供sleep而且是ms级的
而UNIX则只用用alarm来实现ms级的延时了Top
10 楼allen7757(漫步VS新月)回复于 2002-03-15 17:51:53 得分 3
sleep() 是秒
delay() 是毫秒 具体的查一下c 函数 dos.h
Top
11 楼shuicai(水菜)回复于 2002-03-15 18:12:50 得分 2
好象都是毫秒吧。
但他们都不很准的。但精度要求不高的话,完全可以的了。
当然你也可以使用Timer控件或者是SetTimer之类的来替代。
如果你的系统版本够低的话,98以下,可以使用中断服务,估计会罗嗦很多。
Top
12 楼Redeon(Leon)回复于 2002-03-15 18:14:50 得分 0
UNIX下可以用usleep实现所谓的毫秒级(saloris)。
不过win32和unix的毫秒级都不精确。win32大概精确到10ms。
usleep延时不超过一秒。Top
13 楼seashoreboy(海滨)回复于 2002-03-15 18:45:40 得分 0
请问谁知道怎么实现精确定时,即以一秒的间隔,准时调用一个函数?Top
14 楼hucong(stupid urchin)回复于 2002-03-15 18:46:08 得分 0
还有一种方法就是用汇编代码写成循环,当然把它放在关键代码里,^_^Top
15 楼Alexeyomux(黑白的背影)回复于 2002-03-15 19:06:58 得分 0
可以用sleep()或delay()函数。Top
16 楼jinbing(若晴)回复于 2002-03-15 19:09:07 得分 0
在linux下是usleep();延时毫秒级Top
17 楼flyingpsd(我飞呀飞呀飞呀飞)回复于 2002-03-15 19:39:48 得分 0
不是一样的睡觉啊?Top
18 楼xday(飙行者)回复于 2002-03-16 03:20:45 得分 0
在linux/unix下是usleep();
win32 下是 GetSystemTick();
不过都不会太准(>>10ms 我想)Top
19 楼qiwei(破框儿)回复于 2002-03-16 09:40:01 得分 0
delay || sleepTop
20 楼gois(gois)回复于 2002-03-16 09:54:25 得分 2
delay(10);/*10ms*/
sleep(10);/*10s*/
分?Top
21 楼yzfhappy(冷虎)回复于 2002-03-16 11:00:13 得分 0
谢谢大家,我己经解决了。看见这么多的人来帮我,真的不好意思,看来你们都是高手。希望你们百尺竿头更进一步。现把分送上。Top




