使用perror是否需要包含<errno.h>?

问题描述 投票:0回答:1

我可以使用

perror
打印人类可读的 errno 版本,如下所示:

#include <errno.h>
#include <stdio.h>

int main(void) {
    FILE *fp = fopen("file.txt", "r");
    if (fp == NULL) {
        perror("Unable to open file");
        return -1;
    }

    fclose(fp);
    return 0;
}

这也适用于我的实现:

#include <stdio.h>

int main(void) {
    FILE *fp = fopen("file.txt", "r");
    if (fp == NULL) {
        perror("Unable to open file");
        return -1;
    }

    fclose(fp);
    return 0;
}

是否使用

perror
而不包含
<errno.h>
标准?

c language-lawyer errno
1个回答
0
投票

是的。 perror 函数用于打印最后发生的错误的描述,它依赖于 errno 变量,该变量在 标头中定义。

© www.soinside.com 2019 - 2024. All rights reserved.