如何在 c 中使用 mkdir 创建文件夹?

how to create folders using mkdir in c?

我正在尝试在 C 中使用 mkdir 创建一个文件夹,但它不起作用

代码不会创建文件夹

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

int main (){
    char chemin[256];
    char name[20];
    //char fichier[100];                                                        
//  FILE *fp;                                                                   
    strcpy(chemin,"/home/Deva/Documents/prog/C/la/sds");

    mkdir(chemin,0755);
    if (mkdir(chemin,0755)==-1){
        printf("\nERROR\n");
    } else { printf("fichier creer"); }
}

您必须先创建中间目录:例如您必须先创建 /home/Deva,然后才能创建 /home/Deva/Documents 等

您传递的是 PATH 而不仅仅是目录名。 所以请检查下面 post 会有帮助

Recursive mkdir() system call on Unix

2 件事:

1) 您需要先创建中间目录。

2) 你不能创建一个目录两次,你在这里做:

mkdir(chemin,0755);
if (mkdir(chemin,0755)==-1){