umask无法使用c代码

时间:2014-09-06 12:58:11

标签: c umask

我制作了一个用于在根目录下创建文件的c代码。

#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>

const char *path="/";
int main(){
    FILE *fp;
    umask(0);
    chdir(path);

    fp=fopen("test.txt","w+");
    fclose(fp);

    return 0;
}

编译没有错误,但是当我执行文件时,会出现以下错误:

kwagjj@kwagjj-Inspiron-3420:~$ gcc -Wall a2.c -o a2
kwagjj@kwagjj-Inspiron-3420:~$ ./a2
Segmentation fault (core dumped)

我如何使用umask函数错误?

1 个答案:

答案 0 :(得分:2)

我的资金在fopen()失败(可能是由于权限不足)并返回NULLfclose(NULL) causing the segfault