文章详情
C++程序中的OutputDebugStringA终端调试输出函数封装
Posted on 2016-10-31 10:04:02 by 主打一个C++
//OutputDebugStringA方法
void 调试输出(PCSTR szFormat, ...)
{
va_list ArgList;
char szBuffer[1024];
va_start(ArgList, szFormat);
_vsnprintf_s(szBuffer, _countof(szBuffer), _TRUNCATE, szFormat, ArgList);
va_end(ArgList);
OutputDebugStringA(szBuffer);
}
//窗口new console方法
void DbgOut(const char* str, ...) {
static HANDLE C_handle = NULL;
if (C_handle == NULL)
{
AllocConsole();
SetConsoleTitleA("Debug");
C_handle = GetStdHandle(STD_OUTPUT_HANDLE);
FILE* stream1;
freopen_s(&stream1, "CON", "w", stdout);
}
va_list aptr;
va_start(aptr, str);
char buffer[1024] = { 0 };
DWORD ret = vsprintf(buffer, str, aptr);
va_end(aptr);
printf(buffer);
}
*转载请注明出处:原文链接:https://cpp.vin/page/80.html