LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1398|回复: 4

怎么使用err_sys(),err_ret()等函数?

[复制链接]
发表于 2003-12-16 20:31:40 | 显示全部楼层 |阅读模式
知道附录里有,但怎么能用得上。现在是用《APIUE》里复制文件得例子。一点头绪都没有阿。。。
请教。。
发表于 2003-12-16 22:18:00 | 显示全部楼层
那是作者自己写的函数

例:
void err_sys(const char * str)
{
    fprintf(stderr,"%s\n",str);
    exit(1);
}
 楼主| 发表于 2003-12-16 22:46:09 | 显示全部楼层
最初由 _z_ 发表
那是作者自己写的函数

例:
void err_sys(const char * str)
{
    fprintf(stderr,"%s\n",str);
    exit(1);
}


谢谢~~~这是从书抄的源程序,我莱啊。。。怎么把它们结合起来呢!! 请再帮帮忙,先谢了。。
#include "ourhdr.h"
#define BUFFSIZE 512
main (void)
{
int n;
char buf[BUFFSIZE];
while ((n=read(STDIN_FILENO,buf,BUFFSIZE )) >0)
    if (write(STDOUT_FILENO,buf,n) !=n)
        err_sys("write error\n");
if (n<0)
        err_sys("read error\n");
exit (0);
}
发表于 2003-12-16 23:19:59 | 显示全部楼层
象这样的代码段:

if(n<0) {
fprintf(stderr,"error!\n");
exit(1);
}

就可以这么写:

if(n<0)
err_sys(“error!”);
 楼主| 发表于 2003-12-17 14:05:32 | 显示全部楼层
谢谢_z_
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表