_getcwd_dbg、_wgetcwd_dbg
_getcwd、_wgetcwd の関数のデバッグ バージョン。デバッグ中にのみ使用できます)。
char *_getcwd_dbg(
char *buffer,
int maxlen,
int blockType,
const char *filename,
int linenumber
);
wchar_t *_wgetcwd_dbg(
wchar_t *buffer,
int maxlen,
int blockType,
const char *filename,
int linenumber
);
パラメーター
buffer
パスの格納場所。maxlen
パスの最大長の文字 : _getcwd_dbg の char と _wgetcwd_dbg の wchar_t。blockType
メモリ ブロックの要求された型 : _CLIENT_BLOCK または _NORMAL_BLOCK。filename
要求されたソース ファイル名へのポインターまたは操作 NULL。linenumber
割り当ての操作が要求または NULL のソース ファイルの行番号。
戻り値
buffer へのポインターを返します。NULL の戻り値はエラーを表示しerrno は ENOMEM にmaxlen バイトを割り当てるメモリ不足 (NULL の引数が buffer として指定した場合)またはパスが maxlen の文字を超えることを示すに ERANGE ことを示します。またはに設定します。
詳細については、「errno、_doserrno、_sys_errlist、および _sys_nerr」を参照してください。
解説
_getcwd_dbg と _wgetcwd_dbg の関数は _getcwd と _wgetcwd と同じものですが_DEBUG が定義されている場合NULL が最初のパラメーターとして渡されたこれらの関数でメモリを割り当てるために malloc と _malloc_dbg のデバッグ バージョンを使用します。詳細については、「_malloc_dbg」を参照してください。
ほとんどの場合これらの関数を明示的に呼び出す必要はありません。代わりに_CRTDBG_MAP_ALLOC フラグを定義できます。_CRTDBG_MAP_ALLOC が定義されている場合_getcwd の呼び出しと _wgetcwd は _NORMAL_BLOCK への blockType に設定 _getcwd_dbg と _wgetcwd_dbg にそれぞれ再マップされます。したがって _CLIENT_BLOCKヒープのブロックを指定しない場合はこれらの関数を明示的に呼び出す必要はありません。詳細については、「デバッグ ヒープ上のメモリ ブロックの型」を参照してください。
汎用テキスト ルーチンのマップ
Tchar.h のルーチン |
_UNICODE および _MBCS が未定義の場合 |
_MBCS が定義されている場合 |
_UNICODE が定義されている場合 |
---|---|---|---|
_tgetcwd_dbg |
_getcwd_dbg |
_getcwd_dbg |
_wgetcwd_dbg |
必要条件
ルーチン |
必須ヘッダー |
---|---|
_getcwd_dbg |
<crtdbg.h> |
_wgetcwd_dbg |
<crtdbg.h> |
互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。