我有一个已经加载到Visual Studio2005中的win32项目。我希望能够将内容打印到Visual Studio的输出窗口中,但我终生不能解决如何打印的问题。我尝试过'printf‘和'cout <<’,但我的消息仍然顽固地不打印。
是否有某种特殊的方法可以打印到Visual Studio输出窗口?
发布于 2009-08-26 09:50:05
您可以使用OutputDebugString
。OutputDebugString
是一个宏,根据您的构建选项,它可以映射到OutputDebugStringA(char const*)
或OutputDebugStringW(wchar_t const*)
。在后一种情况下,您必须为函数提供一个宽字符串。要创建宽字符文字,可以使用L
前缀:
OutputDebugStringW(L"My output string.");
通常,您将宏版本与_T
宏一起使用,如下所示:
OutputDebugString(_T("My output string."));
如果您的项目配置为使用UNICODE构建,它将扩展为:
OutputDebugStringW(L"My output string.");
如果不是为UNICODE构建,它将扩展为:
OutputDebugStringA("My output string.");
发布于 2009-08-26 09:52:54
要打印到real
控制台,需要使用链接器标志/SUBSYSTEM:CONSOLE
使其可见。额外的控制台窗口很烦人,但出于调试目的,它是非常有价值的。
当在调试器中运行时,OutputDebugString
将打印到调试器输出。
发布于 2015-11-10 05:16:19
如果要打印十进制变量:
wchar_t text_buffer[20] = { 0 }; //temporary buffer
swprintf(text_buffer, _countof(text_buffer), L"%d", your.variable); // convert
OutputDebugString(text_buffer); // print
https://stackoverflow.com/questions/1333527
复制相似问题