理解错误处理

时间:2015-04-07 18:52:24

标签: c error-handling

我可以轻松使用perror()。但是,我知道strerror()也可用于处理。但在此代码中,为什么errnum再次分配给errno?有人可以解释一下吗?

FILE *in;
int errnum = 0;

    in = fopen(filename, "rt");
    if (in == NULL) {
        errnum = errno;
        fprintf(stderr, "%s: %s.\n", filename, strerror(errnum));
        errno = errnum;
        return 0UL;
    }

0 个答案:

没有答案