Share via


_mkdir, _wmkdir

Crée un répertoire.

Syntaxe


int _mkdir(
   const char *dirname
);
int _wmkdir(
   const wchar_t *dirname
);

Paramètres

dirname
Chemin du nouveau répertoire.

Valeur retournée

Chacune de ces fonctions retourne la valeur 0 si le répertoire a été créé. Sur une erreur, la fonction retourne -1 et définit errno comme suit.

EEXIST Le répertoire n’a pas été créé, car dirname il s’agit du nom d’un fichier, d’un répertoire ou d’un appareil existant.

ENOENT Le chemin n’a pas été trouvé.

Pour plus d’informations sur ces codes de retour et d’autres codes de retour, consultez , , _sys_errlist_doserrnoet _sys_nerr.errno

Notes

La _mkdir fonction crée un répertoire avec le répertoire spécifié dirname. _mkdir ne pouvant créer qu’un seul répertoire par appel, seul le dernier composant de dirname peut nommer un nouveau répertoire. _mkdir ne traduit pas les délimiteurs de chemin d’accès. Dans Windows NT, les barres obliques inverses (\) et la barre oblique/ () sont des délimiteurs de chemin valides dans les chaînes de caractères dans les routines d’exécution.

_wmkdir est une version à caractères larges de _mkdir; l'argument dirname de _wmkdir est une chaîne à caractères larges. Sinon,_wmkdir et _mkdir se comportent de la même façon.

Par défaut, l’état global de cette fonction est limité à l’application. Pour modifier ce comportement, consultez État global dans le CRT.

Mappages de routine de texte générique

Tchar.h Routine _UNICODE et _MBCS non défini _MBCS Défini _UNICODE Défini
_tmkdir _mkdir _mkdir _wmkdir

Spécifications

Routine En-tête requis
_mkdir <direct.h>
_wmkdir <direct.h> ou <wchar.h>

Pour plus d’informations sur la compatibilité, consultez Compatibility.

Bibliothèques

Toutes les versions des bibliothèques Runtime C.

Exemple

// crt_makedir.c

#include <direct.h>
#include <stdlib.h>
#include <stdio.h>

int main( void )
{
   if( _mkdir( "\\testtmp" ) == 0 )
   {
      printf( "Directory '\\testtmp' was successfully created\n" );
      system( "dir \\testtmp" );
      if( _rmdir( "\\testtmp" ) == 0 )
        printf( "Directory '\\testtmp' was successfully removed\n"  );
      else
         printf( "Problem removing directory '\\testtmp'\n" );
   }
   else
      printf( "Problem creating directory '\\testtmp'\n" );
}

Exemple de sortie

Directory '\testtmp' was successfully created
Volume in drive C has no label.
Volume Serial Number is E078-087A

Directory of C:\testtmp

02/12/2002  09:56a      <DIR>          .
02/12/2002  09:56a      <DIR>          ..
               0 File(s)              0 bytes
               2 Dir(s)  15,498,690,560 bytes free
Directory '\testtmp' was successfully removed

Voir aussi

Contrôle d’annuaire
_chdir, _wchdir
_rmdir, _wrmdir