%>
新建目录。
语法
int _mkdir(
const char *dirname
);
int _wmkdir(
const wchar_t *dirname
);
参数
dirname
新目录的路径。
返回值
如果创建新目录,这些函数都将返回值 0。 发生错误时,函数将返回 - 1,并将 errno
进行如下设置。
EEXIST
未创建目录,因为 dirname
为现有文件、目录或设备的名称。
找不到 ENOENT
路径。
有关这些和其他的返回代码的详细信息,请参阅 errno
、_doserrno
、_sys_errlist
和 _sys_nerr
。
注解
_mkdir
函数使用指定的 dirname
创建新目录。 每次调用 _mkdir
仅能创建一个新目录,因此只有 dirname
的最后一个组件可以命名新目录。 _mkdir
不会转换路径分隔符。 在 Windows NT 中,反斜杠 (\
) 和正斜杠 (/
) 在运行时例程中都是字符串的有效路径分隔符。
_wmkdir
是 _mkdir
的宽字符版本; dirname
的 _wmkdir
参数是宽字符字符串。 除此以外,_wmkdir
和 _mkdir
的行为完全相同。
默认情况下,此函数的全局状态范围限定为应用程序。 若要更改此行为,请参阅 CRT 中的全局状态。
一般文本例程映射
Tchar.h 例程 |
_UNICODE 和 _MBCS 未定义 |
_MBCS 已定义 |
_UNICODE 已定义 |
---|---|---|---|
_tmkdir |
_mkdir |
_mkdir |
_wmkdir |
要求
例程 | 必需的标头 |
---|---|
_mkdir |
<direct.h> |
_wmkdir |
<direct.h> 或 <wchar.h> |
有关兼容性的详细信息,请参阅 兼容性。
库
C 运行时库的所有版本。
示例
// 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" );
}
示例输出
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
另请参阅
目录控制
%>
%>