Самый простой способ записать выходное сообщение в "окно вывода" в Visual Studio 2010? Я пробовал функцию OutputDebugString и большую часть времени получаю ошибку, например: error C2664: 'OutputDebugStringA' : cannot convert parameter 1 from 'int' to 'LPCSTR' Прошу предложить. Спасибо. Ответ 1 Он принимает только строку как параметр, а не целое число. Попробуйте что-то вроде sprintf(msgbuf, "My variable is %d\n", integerVariable); OutputDebugString(msgbuf); Для получения дополнительной информации см. http://www.unixwiz.net/techtips/outputdebugstring.html Ответ 2 Для целей отладки вы можете использовать _RPT макросы. Например, _RPT1( 0, "%d\n", my_int_value ); Ответ 3 Наиболее распространенным способом, который я знаю, является макрос TRACE: http://msdn.microsoft.com/en-us/library/4wyz8787%28VS.80%29.aspx Например: int x = 1; int y = 16; float z = 32.0; TRACE( "This is a TRACE statement\n" ); TRACE( "The value of x is %d\n", x ); TRACE( "x = %d and y = %d\n", x, y ); TRACE( "x = %d and y = %x and z = %f\n", x, y, z ); Ответ 4 Я нашел этот ответ при поиске сообщения об ошибке: fooobar.com/questions/364589/... В принципе, вам просто нужно поставить "L" перед вашей выходной строкой при использовании OutputDebugString: OutputDebugString(L"test\n"); Это отлично поработало для меня. Edit: Для форматирования строк с данными я закончил использование char buffer[100]; sprintf_s(buffer, "check it out: %s\n", "I can inject things"); OutputDebugStringA(buffer); Я не эксперт, я просто нашел что-то, что сработало и перешло. Ответ 5 Использование: OutputDebugStringA("Some random text"); Или же: OutputDebugString("Some random text"); Ответ 6 Чтобы использовать OutputDebugString(), укажите char * или const char * в качестве параметра: OutputDebugString("This is an output");
Ответ 1 Он принимает только строку как параметр, а не целое число. Попробуйте что-то вроде sprintf(msgbuf, "My variable is %d\n", integerVariable); OutputDebugString(msgbuf); Для получения дополнительной информации см. http://www.unixwiz.net/techtips/outputdebugstring.html
Ответ 2 Для целей отладки вы можете использовать _RPT макросы. Например, _RPT1( 0, "%d\n", my_int_value );
Ответ 3 Наиболее распространенным способом, который я знаю, является макрос TRACE: http://msdn.microsoft.com/en-us/library/4wyz8787%28VS.80%29.aspx Например: int x = 1; int y = 16; float z = 32.0; TRACE( "This is a TRACE statement\n" ); TRACE( "The value of x is %d\n", x ); TRACE( "x = %d and y = %d\n", x, y ); TRACE( "x = %d and y = %x and z = %f\n", x, y, z );
Ответ 4 Я нашел этот ответ при поиске сообщения об ошибке: fooobar.com/questions/364589/... В принципе, вам просто нужно поставить "L" перед вашей выходной строкой при использовании OutputDebugString: OutputDebugString(L"test\n"); Это отлично поработало для меня. Edit: Для форматирования строк с данными я закончил использование char buffer[100]; sprintf_s(buffer, "check it out: %s\n", "I can inject things"); OutputDebugStringA(buffer); Я не эксперт, я просто нашел что-то, что сработало и перешло.
Ответ 5 Использование: OutputDebugStringA("Some random text"); Или же: OutputDebugString("Some random text");
Ответ 6 Чтобы использовать OutputDebugString(), укажите char * или const char * в качестве параметра: OutputDebugString("This is an output");