카테고리 없음
가변인자 사용시 문자열 길이 구하기
좋은나무
2014. 6. 13. 10:37
// 가변인자를 사용한 디버깅 로그 쓰기 예시
void WriteLog(LPCTSTR pszFmt, ...)
{
va_list argList;
va_start(argList, pszFmt);
// 가변인자 사용시 문자열 길이 구하기
int nLength = _vsctprintf(pszFmt, argList);
// 버퍼 메모리 할당
TCHAR * szLog = new TCHAR[(nLength+1)*sizeof(TCHAR)];
// 로그 문자열 생성
_vstprintf_s(szLog, (nLength+1)*sizeof(TCHAR), pszFmt, argList);
va_end(argList);
// 디버깅 로그 쓰기
::OutputDebugString(szLog);
::OutputDebugString(_T("\n"));
// 버퍼 메모리 해제
delete [] szLog;
szLog = NULL;
}