_rmdir, _wrmdir

Deletes a directory.

int _rmdir(
   const char *dirname 
);
int _wrmdir(
   const wchar_t *dirname 
);

Parameters

  • dirname
    Path of the directory to be removed.

Return Value

Each of these functions returns 0 if the directory is successfully deleted. A return value of –1 indicates an error and errno is set to one of the following values:

  • ENOTEMPTY
    Given path is not a directory, the directory is not empty, or the directory is either the current working directory or the root directory.

  • ENOENT
    Path is invalid.

  • EACCES
    A program has an open handle to the directory.

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

Remarks

The _rmdir function deletes the directory specified by dirname. The directory must be empty, and it must not be the current working directory or the root directory.

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

Generic-Text Routine Mappings

Tchar.h routine

_UNICODE and _MBCS not defined

_MBCS defined

_UNICODE defined

_trmdir

_rmdir

_rmdir

_wrmdir

Requirements

Routine

Required header

_rmdir

<direct.h>

_wrmdir

<direct.h> or <wchar.h>

For more compatibility information, see Compatibility in the Introduction.

Libraries

All versions of the C run-time libraries.

Example

See the example for _mkdir.

.NET Framework Equivalent

System::IO::Directory::Delete

See Also

Concepts

Directory Control

_chdir, _wchdir

_mkdir, _wmkdir