发布日期:2016-01-04 10:08 来源: 标签: 编程语言 C教程 C语言信号处理 C语言信号处理函数
本章我们主要学习C语言信号处理函数:sleep、ferror、perror和strerror,下面我们就做一下具体讲解,希望大家多多支持中国站长网络学院。
sleep(让进程暂停执行一段时间)
相关函数 signal,alarm 
表头文件 #include<unistd.h> 
定义函数 unsigned int sleep(unsigned int seconds); 
函数说明 
sleep()会令目前的进程暂停,直到达到参数
seconds 所指定的时间,或是被信号所中断。 
返回值 
若进程暂停到参数seconds 所指定的时间则返回0,若有信号中断则返回剩余秒数。
ferror(检查文件流是否有错误发生)
相关函数 clearerr,perror 
表头文件 #include<stdio.h> 
定义函数 int ferror(FILE *stream); 
函数说明 
ferror()用来检查参数stream所指定的文件流是否发生了错误情况,如有错误发生则返回非0值。 
返回值 
如果文件流有错误发生则返回非0值。
perror(打印出错误原因信息字符串) 
相关函数 strerror 
表头文件 #include<stdio.h> 
定义函数 void perror(const char *s); 
函数说明 
perror()用来将上一个函数发生错误的原因输出到标准错误(stderr)。参数s所指的字符串会先打印出,后面再加上错误原因字符串。此错误原因依照全局变量errno的值来决定要输出的字符串。
范例 
#include<stdio.h> 
main() 
{
FILE *fp; 
fp = fopen(“/tmp/noexist”,”r+”); 
if(fp = =NULL) perror(“fopen”); } 
执行 $ ./perror 
fopen : No such file or diretory
strerror(返回错误原因的描述字符串) 
相关函数 perror 
表头文件 #include<string.h> 
定义函数 char * strerror(int errnum); 
函数说明 
strerror()用来依参数errnum的错误代码来查询其错误原因的描述字符串,然后将该字符串指针返回。 
返回值 
返回描述错误原因的字符串指针。 
范例 
/* 显示错误代码0 至9 的错误原因描述*/
 #include<string.h>
 main() 

int i; 
for(i=0;i<10;i++) 
printf(“%d : %s\n”,i,strerror(i)); 

执行 
0 : Success 
1 : Operation not permitted 
2 : No such file or directory 
3 : No such process 
4 : Interrupted system call 
5 : Input/output error 




















6 : Device not configured 
7 : Argument list too long 
8 : Exec format error 
9 : Bad file descriptor

相关评论

专题信息
    C语言是一种计算机程序设计语言。它既有高级语言的特点,又具有汇编语言的特点。它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。C语言对操作系统和系统使用程序以及需要对硬件进行操作的场合,用C语言明显优于其它解释型高级语言,有一些大型应用软件也是用C语言编写的。 C语言具有绘图能力强,可移植性,并具备很强的数据处理能力,因此适于编写系统软件,三维,二维图形和动画。它是数值计算的高级语言。C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。