Créer un répertoire

J’essaie de créer un répertoire en utilisant le code suivant. Il comstack, mais ne crée pas de répertoire. Aucune suggestion?

#include  #include  #include  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; } 

Le répertoire “nom de fichier” existe-t-il déjà? mkdir() ne créera qu’un répertoire à la fois; si le répertoire parent n’existe pas non plus, vous devrez d’abord le créer séparément.

Il est fort probable que la création du répertoire échoue, car vous essayez de créer un répertoire nested et son parent n’existe pas. mkdir ne peut pas créer de répertoires de manière récursive. Mais vous ne pouvez que deviner si vous ne vérifiez pas correctement les codes de retour et les erreurs dans votre programme.