_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
_doserrno
et _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 routines de texte générique
Routine Tchar.h |
_UNICODE et _MBCS non définis |
_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