_getdcwd_dbg
, _wgetdcwd_dbg
関数_wgetdcwd
のバージョンをデバッグします _getdcwd
(デバッグ中にのみ使用できます)。
構文
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
文字数でのパスの最大長。char
の場合は _getdcwd_dbg
、および wchar_t
の場合は _wgetdcwd_dbg
。
blockType
要求するメモリ ブロックの種類。_CLIENT_BLOCK
または _NORMAL_BLOCK
。
filename
割り当て操作を要求したソース ファイル名へのポインターまたは NULL
。
linenumber
割り当て操作が要求されたソース ファイル内の行番号または NULL
。
戻り値
buffer
へのポインターを返します。 NULL
戻り値はエラーを示しerrno
、バイトを割り当てるmaxlen
メモリが不足していることを示す (引数が指定されている場合NULL
)、またはパスがbuffer
文字よりもmaxlen
長くなることをERANGE
示す値に設定ENOMEM
されます。 詳細については、「errno
」、「_doserrno
」、「_sys_errlist
」、および「_sys_nerr
」を参照してください。
解説
_getdcwd_dbg
および _wgetdcwd_dbg
関数は _getdcwd
および _wgetdcwd
と同じものですが、_DEBUG
が定義されている場合に、malloc
パラメーターとして _malloc_dbg
が渡されると、これらの関数はメモリを割り当てるために NULL
および buffer
のデバッグ バージョンを使用する点が異なります。 詳細については、_malloc_dbg
を参照してください。
ほとんどの場合、これらの関数を明示的に呼び出す必要はありません。 代わりに、_CRTDBG_MAP_ALLOC
フラグを定義できます。 _CRTDBG_MAP_ALLOC
が定義されている場合、_getdcwd
および _wgetdcwd
の呼び出しはそれぞれ _getdcwd_dbg
および _wgetdcwd_dbg
にマップし直され、blockType
が _NORMAL_BLOCK
に設定されます。 したがって、ヒープ ブロック _CLIENT_BLOCK
を 〘 としてマークしない限り、これらの関数を明示的に呼び出す必要はありません。 詳細については、デバッグ ヒープ上のメモリ ブロックの型に関する記事をご覧ください。
汎用テキスト ルーチンのマップ
Tchar.h のルーチン | _UNICODE と _MBCS が定義されていない |
_MBCS が定義されている |
_UNICODE が定義されている |
---|---|---|---|
_tgetdcwd_dbg |
_getdcwd_dbg |
_getdcwd_dbg |
_wgetdcwd_dbg |
必要条件
ルーチンによって返される値 | 必須ヘッダー |
---|---|
_getdcwd_dbg |
<crtdbg.h> |
_wgetdcwd_dbg |
<crtdbg.h> |
互換性の詳細については、「 Compatibility」を参照してください。
関連項目
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示