Windows常用函数模块收集

75 阅读1分钟

1. 输出日志到DebugView:

(1)多字节版本:

void DebugPrint(const char* format, ...)
{
	if (format == NULL)
	{
		return;
	}
	char line[1024*4]={0};	
	int len = _snprintf( line,sizeof(line)-1,"[ZGHPRINTTEST]" );
	
	va_list ap;	
	va_start(ap, format);
	int len2 = _vsnprintf(line+len,sizeof(line)-len-1, format, ap);
	va_end(ap);
	_snprintf(line+len+len2,sizeof(len)-len-len2-1,"\n");
	OutputDebugString(line);
}

(2)宽字节:

void DebugPrintW(const wchar_t *format, ...)
{
	if (NULL == format)
	{
		return;
	}
	wchar_t buffer[MAX_LOG_LEN] = {0};
	va_list ap;
	va_start(ap, format);
	(void)StringCchVPrintfW(buffer, _countof(buffer), format, ap);
	va_end(ap);
	OutputDebugStringW(buffer);
}