次のコードを使用してディレクトリを作成しようとしています。これはコンパイルされますが、ディレクトリは作成されません。助言がありますか?ディレクトリを作成する
#include <stdio.h>
#include <string.h>
#include <sys/stat.h>
int main(void)
{
const char base[] = "filename";
char filename [ FILENAME_MAX ];
int number = 42;
sprintf(filename, "%s/%d", base, number);
printf("filename = \"%s\"\n", filename);
mkdir (filename, S_IRWXU);
return 0;
}
なぜmkdirのリターンコードをキャッチしませんか? linux.die.net/man/3/mkdir – hari
'mkdir'が' -1'を返し、 'errno'の値が返ってくるかどうかを調べます。 –
確かに。それがうまくいかない理由を尋ねてみてください! 'if(mkdir(filename、S_IRWXU)!= 0){perror(" mkdir()error "); } '。 –