_mkdir
, _wmkdir
Crea una nuova directory.
Sintassi
int _mkdir(
const char *dirname
);
int _wmkdir(
const wchar_t *dirname
);
Parametri
dirname
Percorso per una nuova directory.
Valore restituito
Ognuna di queste funzioni restituisce il valore 0 se la nuova directory è stata creata. In caso di errore, la funzione restituisce -1 e imposta errno
come indicato di seguito.
EEXIST
La directory non è stata creata perché dirname
è il nome di un file, una directory o un dispositivo esistente.
ENOENT
Percorso non trovato.
Per altre informazioni su questi e altri codici restituiti, vedere errno
, _doserrno
, _sys_errlist
e _sys_nerr
.
Osservazioni:
La _mkdir
funzione crea una nuova directory con l'oggetto specificato dirname
. La funzione _mkdir
può creare solo una nuova directory per chiamata, quindi solo l'ultimo componente di dirname
può denominare una nuova directory. _mkdir
non converte i delimitatori di percorso. In Windows NT, sia la barra rovesciata () che la barra (\
/
) sono delimitatori di percorso validi nelle stringhe di caratteri nelle routine di runtime.
_wmkdir
è una versione a caratteri wide di _mkdir
; l'argomento dirname
in _wmkdir
è una stringa di caratteri wide. In caso contrario,_wmkdir
e _mkdir
si comportano in modo identico.
Per impostazione predefinita, lo stato globale di questa funzione è limitato all'applicazione. Per modificare questo comportamento, vedere Stato globale in CRT.
Mapping di routine di testo generico
Tchar.h routine |
_UNICODE e _MBCS non definito |
_MBCS definito |
_UNICODE definito |
---|---|---|---|
_tmkdir |
_mkdir |
_mkdir |
_wmkdir |
Requisiti
Ciclo | Intestazione obbligatoria |
---|---|
_mkdir |
<direct.h> |
_wmkdir |
<direct.h> oppure <wchar.h> |
Per altre informazioni sulla compatibilità, vedere Compatibility (Compatibilità).
Librerie
Tutte le versioni delle librerie di runtime C.
Esempio
// 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" );
}
Output di esempio
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