现在的位置: 首页 > 综合 > 正文

UNIX环境高级编程读书笔记(四)—出错处理

2014年09月21日 ⁄ 综合 ⁄ 共 1025字 ⁄ 字号 评论关闭

1

名称:

perror

功能:

该函数在stderr流中输出错误信息

头文件:

#include <stdio.h>

函数原形:

void perror(const char *message)

参数:

message 

返回值:

 

 

 

    如果调用perror是使用的message参数是一个空指针或者一个空字符串,则perror函数将打印与errno相对的错误信息,以及一个换行符。

如果提供的message参数非空,则perror函数将作为前缀首先输出该字符串的内容,然后添加一个冒号和空格字符,最后是errno向对应的错误信息。

例:

#include <stdio.h>

#include <sys/type.h>

#include <sys/stat.h>

#include <fcntl.h>

 

int main(int argc,char *argv[])

{

int fd;

if(fd=open(argv[1]O_RDWR)==-1)

    perror(argv[1]);

else

    perror(argv[1]);

}

 

下面是运行结果:

#./perror perror.c

perror.c: success

#./perror perror.x

No such file or directory

#./perror perror

perror: Text file busy

 

 

2

名称:

errno

功能:

number of last error

头文件:

#include <errno.h>

函数原形:

extern int errno;

参数:

0

负数

 

 

3.

名称:

strerror/strerror_r

功能:

return string describing error code

头文件:

#include <string.h>

函数原形:

char *strerrorint errnum;

int strerror_r(int errnum,char *buf,size_t n);

参数:

errnum 

返回值:

指向串的指针。

 

 

 

 

      errnum的值通常来自errno,不因该修改strerror所返回的串,以后再次调用strerror时重写该串。

 

4

名称:

ferror feof clearerr

目标:

标准I/O 的出错处理。

头文件:

#include <stdio.h>

函数原形:

int ferror(FILE fp);

int feof(FILE fp);

void clearerr(FILE fp);

参数:

 

返回值:

 

    

 

 

 

 
 
 
 
 
 
 
 
 
 
 

抱歉!评论已关闭.