次の方法で共有


_getdcwd_dbg、_wgetdcwd_dbg

_getdcwd、_wgetdcwd の関数のデバッグ バージョン。デバッグ中にのみ使用できます)。

char *_getdcwd_dbg(
   int drive,
   char *buffer,
   int maxlen,
   int blockType,
   const char *filename,
   int linenumber 
);
wchar_t *_wgetdcwd_dbg(
   int drive,
   wchar_t *buffer,
   int maxlen,
   int blockType,
   const char *filename,
   int linenumber 
);

パラメーター

  • drive
    ディスク ドライブの名前。

  • buffer
    パスの格納場所。

  • maxlen
    パスの最大長の文字 : _getdcwd_dbg の char と _wgetdcwd_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」を参照してください。

解説

_getdcwd_dbg と _wgetdcwd_dbg の関数は _getdcwd と _wgetdcwd と同じものですが_DEBUG が定義されている場合NULL が buffer のパラメーターとして渡されたこれらの関数でメモリを割り当てるために malloc と _malloc_dbg のデバッグ バージョンを使用します。詳細については、「_malloc_dbg」を参照してください。

ほとんどの場合これらの関数を明示的に呼び出す必要はありません。代わりに_CRTDBG_MAP_ALLOC フラグを定義できます。_CRTDBG_MAP_ALLOC が定義されている場合_getdcwd の呼び出しと _wgetdcwd は _NORMAL_BLOCK への blockType に設定 _getdcwd_dbg と _wgetdcwd_dbg にそれぞれ再マップされます。したがって _CLIENT_BLOCKヒープのブロックを指定しない場合はこれらの関数を明示的に呼び出す必要はありません。詳細については、「デバッグ ヒープ上のメモリ ブロックの型」を参照してください。

汎用テキスト ルーチンのマップ

Tchar.h のルーチン

_UNICODE および _MBCS が未定義の場合

_MBCS が定義されている場合

_UNICODE が定義されている場合

_tgetdcwd_dbg

_getdcwd_dbg

_getdcwd_dbg

_wgetdcwd_dbg

必要条件

ルーチン

必須ヘッダー

_getdcwd_dbg

<crtdbg.h>

_wgetdcwd_dbg

<crtdbg.h>

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

同等の .NET Framework 関数

Environment.CurrentDirectory

参照

関連項目

_getdcwd、_wgetdcwd

ディレクトリ制御

概念

デバッグ バージョンのヒープ割り当て関数