Freigeben über


_mkdir, _wmkdir

Erstellt ein neues Verzeichnis.

Syntax


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

Parameter

dirname
Der Pfad für ein neues Verzeichnis.

Rückgabewert

Jede dieser Funktionen gibt den Wert 0 zurück, wenn das neue Verzeichnis erstellt wurde. Bei einem Fehler gibt die Funktion -1 zurück und legt sie wie folgt fest errno .

EEXIST Das Verzeichnis wurde nicht erstellt, da es sich um dirname den Namen einer vorhandenen Datei, eines Verzeichnisses oder geräts handelt.

ENOENT Der Pfad wurde nicht gefunden.

Weitere Informationen zu diesen und anderen Rückgabecodes finden Sie unter , , _doserrno, _sys_errlistund _sys_nerr.errno

Hinweise

Die _mkdir Funktion erstellt ein neues Verzeichnis mit dem angegebenen dirname. _mkdir kann pro Aufruf nur ein neues Verzeichnis erstellen, weshalb nur die letzte Komponente von dirname ein neues Verzeichnis benennen kann. _mkdir übersetzt keine Pfadtrennzeichen. In Windows NT sind sowohl der umgekehrte Schrägstrich (\) als auch der Schrägstrich (/) gültige Pfadtrennzeichen in Zeichenzeichenfolgen in Laufzeitroutinen.

_wmkdir ist eine Breitzeichenversion von _mkdir. Das dirname -Argument für _wmkdir ist eine Breitzeichenfolge. _wmkdir und _mkdir verhalten sich andernfalls identisch.

Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Wie Sie dieses Verhalten ändern, erfahren Sie unter Globaler Status in der CRT.

Mapping generischer Textroutinen

Tchar.h-Routine _UNICODE und _MBCS nicht definiert _MBCS definiert _UNICODE definiert
_tmkdir _mkdir _mkdir _wmkdir

Anforderungen

Routine Erforderlicher Header
_mkdir <direct.h>
_wmkdir <direct.h> oder <wchar.h>

Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.

Libraries

Alle Versionen der C-Laufzeitbibliotheken.

Beispiel

// 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" );
}

Beispielausgabe

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

Siehe auch

Verzeichnissteuerelement
_chdir, _wchdir
_rmdir, _wrmdir