_mkdir, _wmkdir
Erstellt ein neues Verzeichnis.
int _mkdir(
const char *dirname
);
int _wmkdir(
const wchar_t *dirname
);
Parameter
- dirname
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 wird die Funktion - 1 zurück und legt errno wie folgt fest.
EEXIST
Verzeichnis wurde nicht erstellt, da dirname der Name einer vorhandenen Datei, des Verzeichnisses oder des Geräts ist.ENOENT
Pfad wurde nicht gefunden.
Weitere Informationen zu diesen und anderen Rückgabecodes finden Sie unter _doserrno, errno, _sys_errlist und _sys_nerr.
Hinweise
Die _mkdir-Funktion erstellt ein neues Verzeichnis mit dem angegebenen dirname. _mkdir kann nur ein neues Verzeichnis pro Aufruf erstellen, sodass nur die letzte Komponente von dirname können Sie ein neues Verzeichnis benennen. _mkdir übersetzt nicht Pfadtrennzeichen. In Windows NT sind der umgekehrte Schrägstrich (\) und der Schrägstrich (/) gültige Pfadtrennzeichen in Zeichenfolgen in den Ablaufroutinen.
_wmkdir ist eine Breitzeichenversion von _mkdir. Das dirname-Argument für _wmkdir ist eine Breitzeichenfolge. _wmkdir und _mkdir verhalten sich andernfalls identisch.
Zuordnung 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 in der Einführung.
Bibliotheken
Alle Versionen 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