의 _tempnam디버그 버전을 사용하는 , _wtmpnam tmpnam_wtempnam, 의 malloc_malloc_dbg함수 버전
구문
char *_tempnam_dbg(
const char *dir,
const char *prefix,
int blockType,
const char *filename,
int linenumber
);
wchar_t *_wtempnam_dbg(
const wchar_t *dir,
const wchar_t *prefix,
int blockType,
const char *filename,
int linenumber
);
매개 변수
dir
TMP 환경 변수가 없거나 TMP가 유효한 디렉터리가 아닌 경우 파일 이름에 사용되는 경로입니다.
prefix
_tempnam에서 반환하는 이름 앞에 추가되는 문자열입니다.
blockType
요청된 메모리 블록 형식으로 _CLIENT_BLOCK 또는 _NORMAL_BLOCK입니다.
filename
할당 작업 또는 NULL을 요청한 소스 파일의 이름에 대한 포인터입니다.
linenumber
할당 작업이 요청되었거나 NULL인 소스 파일의 줄 번호입니다.
반환 값
각 함수는 생성된 이름 또는 NULL 오류가 있는 경우 포인터를 반환합니다. TMP 환경 변수 및 dir 매개 변수에 잘못된 디렉터리 이름이 지정된 경우 오류가 발생할 수 있습니다.
참고 항목
free(또는 free_dbg)는 _tempnam_dbg 및 _wtempnam_dbg가 할당한 포인터에 대해 호출할 필요가 없습니다.
설명
및 함수는 _tempnam_dbg 정의될 때 _DEBUG 디버그 버전을 _malloc_dbgmalloc 사용하고 첫 번째 매개 변수로 전달되는 경우 NULL 메모리를 할당한다는 점을 제외하고 동일합니다 _tempnam _wtempnam._wtempnam_dbg 자세한 내용은 _malloc_dbg를 참조하세요.
대부분의 경우 이러한 함수를 명시적으로 호출할 필요가 없습니다. 대신 _CRTDBG_MAP_ALLOC 플래그를 정의할 수 있습니다. _CRTDBG_MAP_ALLOC을 정의하면 _tempnam 및 _wtempnam에 대한 호출이 각각 _tempnam_dbg 및 _wtempnam_dbg로 다시 매핑되고 blockType은 _NORMAL_BLOCK으로 설정됩니다. 따라서 힙 블록을 _CLIENT_BLOCK.로 표시하지 않는 한 이러한 함수를 명시적으로 호출할 필요가 없습니다. 자세한 내용은 디버그 힙의 블록 형식을 참조하세요.
일반 텍스트 루틴 매핑
| TCHAR.H 루틴 | _UNICODE 및 _MBCS 정의되지 않음 |
정의된 _MBCS |
정의된 _UNICODE |
|---|---|---|---|
_ttempnam_dbg |
_tempnam_dbg |
_tempnam_dbg |
_wtempnam_dbg |
요구 사항
| 루틴에서 반환된 값 | 필수 헤더 |
|---|---|
_tempnam_dbg, _wtempnam_dbg |
<crtdbg.h> |
호환성에 대한 자세한 내용은 호환성을 참조하세요.