_mkdir
, _wmkdir
Vytvoří nový adresář.
Syntaxe
int _mkdir(
const char *dirname
);
int _wmkdir(
const wchar_t *dirname
);
Parametry
dirname
Cesta k novému adresáři
Vrácená hodnota
Každá z těchto funkcí vrátí hodnotu 0, pokud byl vytvořen nový adresář. Při chybě vrátí funkce hodnotu -1 a nastaví errno
následujícím způsobem.
EEXIST
Adresář se nevytvořil, protože dirname
se jedná o název existujícího souboru, adresáře nebo zařízení.
ENOENT
Cesta nebyla nalezena.
Další informace o těchto a dalších návratových kódech naleznete v tématu , , , a_sys_nerr
. _sys_errlist
_doserrno
errno
Poznámky
Funkce _mkdir
vytvoří nový adresář se zadaným dirname
adresářem . _mkdir
může vytvořit pouze jeden nový adresář na volání, takže pouze poslední komponenta dirname
může pojmenovat nový adresář. _mkdir
nepřekládá oddělovače cest. V systém Windows NT jsou zpětné lomítko () i lomítko (\
/
) platnými oddělovači cest ve znakových řetězcích v rutinách za běhu.
_wmkdir
je verze širokého znaku _mkdir
dirname
; argument je _wmkdir
řetězec širokého znaku. _wmkdir
a _mkdir
chovat se stejně jinak.
Ve výchozím nastavení je globální stav této funkce vymezen na aplikaci. Chcete-li toto chování změnit, přečtěte si téma Globální stav v CRT.
Mapování rutin obecného textu
Tchar.h rutina |
_UNICODE a _MBCS není definován |
_MBCS definovaný |
_UNICODE definovaný |
---|---|---|---|
_tmkdir |
_mkdir |
_mkdir |
_wmkdir |
Požadavky
Rutina | Požadovaný hlavičkový soubor |
---|---|
_mkdir |
<direct.h> |
_wmkdir |
<direct.h> nebo <wchar.h> |
Další informace o kompatibilitě najdete v tématu Kompatibilita.
Knihovny
Všechny verze knihoven runtime jazyka C.
Příklad
// 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" );
}
Ukázkový výstup
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