当前位置:首页 » 编程语言 » c语言等待函数

c语言等待函数

发布时间: 2022-05-15 01:54:39

c语言的sleep,wait,delay函数有什么区别

wait 是等待子进程的返回
sleep 参数指定暂停时间, 单位是 s
delay 参数指定暂停时间, 单位是 ms
所以 sleep(n) == delay(1000*n)
原型:extern void sleep(unsigned int sec);
用法:#include <system.h
功能:短暂延时
说明:延时sec秒举例:// sleep.c
#include <system.h
main(){int c;clrscr();printf("\nHello, world!");sleep(1);clrscr();printf("\nHi, guys");getchar();return 0;}原型:extern void delay(unsigned int msec);
用法:#include <system.h
功能:短暂延时
说明:延时msec*4毫秒举例:// delay.c
#include <system.h
main(){int c;clrscr();printf("\nHello, world!");
delay(250); // 250*4=1000msec=1secclrscr();printf("\nHi, guys");getchar();return 0;}wait(等待子进程中断或结束)相关函数waitpid,fork表头文件#include<sys/types.h
#include<sys/wait.h
定义函数pid_t wait (int * status);函数说明
wait()会暂时停止目前进程的执行,直到有信号来到或子进程结束。如果在调用wait()时子进程已经结束,则wait()会立即返回子进程结束状态
值。子进程的结束状态值会由参数status 返回,而子进程的进程识别码也会一快返回。如果不在意结束状态值,则参数status可以设成NULL。子进程的结束状态值请参考waitpid()。
返回值如果执行成功则返回子进程识别码(PID),如果有错误发生则返回-1。失败原因存于errno中。

⑵ c语言里的DELAY函数到底有没用啊

看你调了<dos.h> ,sound可能只会在PC喇叭里发音,sound后的参数应该是声音频率HZ。人耳朵只能识别一段频率范围内的。你可以从0-10000取几个值试试听听。可能还需要用nosound关闭声音。至于DELAY可以看下你的工具带的帮助,有些需要除以一个数才得到毫秒值。

linux系统 下 如何让C语言sleep()函数等待时间小于1秒

sleep()函数大概只能精确到50ms左右,你用sleep(10)是肯定不行的,如果你要精确的定时的话可以使用QueryPerformanceFrequency()函数,用法为:
LARGE_INTEGER litmp;
LONGLONG QPart1,QPart2;
double dfMinus, dfFreq, dfTim;
QueryPerformanceFrequency(&litmp);
dfFreq = (double)litmp.QuadPart;// 获得计数器的时钟频率
QueryPerformanceCounter(&litmp);
QPart1 = litmp.QuadPart;// 获得初始值
do
{
QueryPerformanceCounter(&litmp);
QPart2 = litmp.QuadPart;//获得中止值
dfMinus = (double)(QPart2-QPart1);
dfTim = dfMinus / dfFreq;// 获得对应的时间值,单位为秒
}while(dfTim<0.001);
其定时误差不超过1微秒,精度与CPU等机器配置有关。

×××××××××××××××××××××××××

sleep()函数的中等待时间是以毫秒计算的,所以等待1秒就是sleep(1000),如果要让等待时间小于一秒,那么就让传入的参数小于1000就行了.
比如,等待0.1秒:
sleep(100);

⑷ 如何用c语言控制台程序进行延时等待,同时还可以执行其他函数

所谓的延时程序,就是让程序进入一段无效循环,达到延时目的

有一个延时参数表的。

下面是一个10ms延时子程序(12MHZ)

void delay10ms(void)
{
unsigned char i,j,k;

for(i=5;i>0;i--)
for(j=4;j>0;j--)
for(k=248;k>0;k--);
}

⑸ C语言自定义消息函数的等待怎么写

消息队列的等待就是GetMessage,没办法自己写,除非你打算改Windows本身。这个函数如果没有消息进来就会释放CPU,如果不希望等待用PeekMessage。消息循环的格式是固定的。

⑹ C语言中输入函数等待输入和结束输入

你随便输入一个字母试下,马上就返回,除了你本就是要输入%c

⑺ c语言sleep函数怎么用

使用要带上头文件:

#include <windows.h>

Sleep函数:
功 能: 执行挂起一段时间
用 法: unsigned sleep(unsigned seconds);
注意:
1.在VC中使用带上头文件#include <windows.h>,在Linux下,gcc编译器中,使用的头文件因gcc版本的不同而不同#include <unistd.h>
2.在VC中,Sleep中的第一个英文字符为大写的"S" ,在linux下不要大写,在标准C中是sleep, 不要大写,简单的说VC用Sleep, 别的一律使用sleep。
3.在VC中,Sleep()里面的单位,是以毫秒为单位,所以如果想让函数滞留1秒的话,应该是Sleep(1000); 在Linux下,sleep()里面的单位是秒,而不是毫秒。

示例:


#include<dos.h>
int main(void)
{
sound(440);
delay(500);
nosound();
return 0;
}
delay()是循环等待,该进程还在运行,占用处理器。
sleep()不同,它会被挂起,把处理器让给其他的进程。

⑻ c语言中 等待的函数是什么呢

包含头文件:
#include
<windows.h>
调用
Sleep(3000);
就是等待3000毫秒(3秒)。第一个字母S大写。
--------
也可以自己写一个
等待
整数秒的函数:
#include
<time.h>
void
wait
(
int
seconds
)
{
clock_t
endwait;
endwait
=
clock
()
+
seconds
*
CLK_TCK
;
while
(clock()
<
endwait)
{}
}
调用
wait(3);
就是等待3秒

⑼ c语言中等待的函数是什么

如果对时间要求非常精确,可以考虑采用和汇编中处理的情况,看看cpu的频率,将for命令分解成汇编语言,看多少毫秒执行一次命令,然后设置循环次数,这样足够精确,实际上在汇编下也是这么做的。

热点内容
安卓软件为什么经常自启动 发布:2025-05-14 04:38:17 浏览:158
谭浩强c语言第三版课后答案 发布:2025-05-14 04:37:31 浏览:59
san存储和nas存储 发布:2025-05-14 04:34:44 浏览:152
幽灵战士3什么配置 发布:2025-05-14 04:33:53 浏览:114
安卓的虚拟机哪个好用 发布:2025-05-14 04:32:34 浏览:871
宿迁存储式化工设备 发布:2025-05-14 04:32:33 浏览:54
s7200编程s7200 发布:2025-05-14 04:28:32 浏览:413
安卓定制版苹果手机是什么意思 发布:2025-05-14 04:26:27 浏览:379
如何搭建php环境虚拟服务器免费 发布:2025-05-14 04:25:37 浏览:103
相册加密怎么看 发布:2025-05-14 04:24:53 浏览:573