다음을 통해 공유


_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로 지정된 경우) ERANGE로 설정되어 경로가 maxlen자보다 긺을 나타냅니다. 자세한 내용은 errno, _doserrno, _sys_errlist 및 _sys_nerr을 참조하십시오.

설명

NULL이 buffer 매개 변수로 전달된 경우 _DEBUG가 정의되면 이러한 함수가 malloc 및 _malloc_dbg의 디버그 버전을 사용하여 메모리를 할당한다는 점을 제외하면 _getdcwd_dbg 및 _wgetdcwd_dbg 함수는 _getdcwd 및 _wgetdcwd와 동일합니다. 자세한 내용은 _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>

호환성에 대한 자세한 내용은 소개 단원의 호환성을 참조하세요.

해당 .NET Framework 항목

Environment.CurrentDirectory

참고 항목

참조

_getdcwd, _wgetdcwd

디렉터리 제어

개념

힙 할당 함수의 디버그 버전