_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_errliste _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

Vedi anche

Controllo directory
_chdir, _wchdir
_rmdir, _wrmdir