_mkdir、_wmkdir
建立新目錄。
int _mkdir(
const char *dirname
);
int _wmkdir(
const wchar_t *dirname
);
參數
- dirname
新目錄的路徑。
傳回值
如果新目錄建立,這些函式都會傳回值 0。 在錯誤,則函式會傳回– 1 並加以設定 errno 。
EEXIST
因為 dirname 是現有的檔案、目錄或裝置的名稱,目錄未建立。ENOENT
找不到路徑 。
如需更多關於這些和其他回傳碼的資訊,請參閱 _doserrno 、 errno 、 _sys_errlist 、和 _sys_nerr (_doserrno, errno, _sys_errlist, and _sys_nerr) 。
備註
_mkdir 函式會以指定的 dirname 的新目錄。_mkdir 只能建立每個呼叫新目錄,則 dirname 只最後元件可以將新的目錄。 _mkdir 不會轉譯路徑分隔符號。 在 Windows NT,反斜線 (\) 或正斜線 (/) 是字串的有效路徑分隔符號在執行階段常式。
_wmkdir 是 _mkdir 的寬字元版本。 _wmkdir 的 dirname 引數是寬字元字串。 _wmkdir 和 _mkdir 其餘行為相同。
一般文字常式對應
Tchar.h 常式 |
未定義 _UNICODE and _MBCS |
_MBCS 已定義 |
_UNICODE 已定義 |
---|---|---|---|
_tmkdir |
_mkdir |
_mkdir |
_wmkdir |
需求
常式 |
必要的標頭 |
---|---|
_mkdir |
<direct.h> |
_wmkdir |
<direct.h> 或 <wchar.h> |
如需更多關於相容性的資訊,請參閱入門介紹中的 相容性 (Compatibility) 。
程式庫
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