Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
114 lines (82 sloc) 3.57 KB
title ms.date api_name api_location api_type topic_type f1_keywords helpviewer_keywords ms.assetid
_mkdir, _wmkdir
11/04/2016
_wmkdir
_mkdir
msvcrt.dll
msvcr80.dll
msvcr90.dll
msvcr100.dll
msvcr100_clr0400.dll
msvcr110.dll
msvcr110_clr0400.dll
msvcr120.dll
msvcr120_clr0400.dll
ucrtbase.dll
api-ms-win-crt-filesystem-l1-1-0.dll
DLLExport
apiref
_mkdir
tmkdir
_tmkdir
wmkdir
_wmkdir
_wmkdir function
folders [C++], creating
wmkdir function
directories [C++], creating
mkdir function
tmkdir function
_mkdir function
_tmkdir function
7f22d01d-63a5-4712-a6e7-d34878b2d840

_mkdir, _wmkdir

Creates a new directory.

Syntax

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

Parameters

dirname
Path for a new directory.

Return Value

Each of these functions returns the value 0 if the new directory was created. On an error, the function returns -1 and sets errno as follows.

EEXIST Directory was not created because dirname is the name of an existing file, directory, or device.

ENOENT Path was not found.

For more information about these and other return codes, see _doserrno, errno, _sys_errlist, and _sys_nerr.

Remarks

The _mkdir function creates a new directory with the specified dirname. _mkdir can create only one new directory per call, so only the last component of dirname can name a new directory. _mkdir does not translate path delimiters. In Windows NT, both the backslash ( \) and the forward slash (/ ) are valid path delimiters in character strings in run-time routines.

_wmkdir is a wide-character version of _mkdir; the dirname argument to _wmkdir is a wide-character string. _wmkdir and _mkdir behave identically otherwise.

Generic-Text Routine Mappings

Tchar.h routine _UNICODE and _MBCS not defined _MBCS defined _UNICODE defined
_tmkdir _mkdir _mkdir _wmkdir

Requirements

Routine Required header
_mkdir <direct.h>
_wmkdir <direct.h> or <wchar.h>

For more compatibility information, see Compatibility.

Libraries

All versions of the C run-time libraries.

Example

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

Sample Output

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

See also

Directory Control
_chdir, _wchdir
_rmdir, _wrmdir

You can’t perform that action at this time.