如何在c中使用mkdir创建文件夹?
我正在尝试使用C中的mkdir创建一个文件夹,但它不起作用 代码不会创建文件夹如何在c中使用mkdir创建文件夹?,c,mkdir,C,Mkdir,我正在尝试使用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];
#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"); }
}
#包括
#包括
#包括
#包括
int main(){
char-chemin[256];
字符名[20];
//char-fichier[100];
//文件*fp;
strcpy(chemin,“/home/Deva/Documents/prog/C/la/sds”);
mkdir(chemin,0755);
if(mkdir(chemin,0755)=-1){
printf(“\n错误\n”);
}else{printf(“fichier-creer”);}
}
您必须首先创建中间目录:例如,您必须在创建/home/Deva/Documents之前创建/home/Deva,等等。您传递的是路径,而不仅仅是目录名。
所以请检查下面的帖子会有所帮助
两件事:
1) 您需要首先创建中间目录
2) 不能创建两次目录,请在此处执行以下操作:
mkdir(chemin,0755);
if (mkdir(chemin,0755)==-1){
可能重复您实际调用“mkdir”函数两次。运行代码后,是否查看目录是否在那里?它可能第二次失败,因为它已经存在。如果这不是问题所在,请查看“perror”,它可以为您提供有关所遇到错误的更多信息。是的,
If(chemin,0755){…}
就可以了perfectly@JennyT-你说什么?不管发生什么情况,这都会返回true。@oops,我的意思是如果(mkdir(chemin,0755)=-1){…}
我本该复制/粘贴的时候没有复制/粘贴。我应该删除第一次尝试吗?我不想传播错误的信息,