Visual Studio的输出窗口上输出文字的函数
参考网站:http://www.voidcn.com/blog/u011808175/article/p-2083567.html
当你编写非控制台程序时,比如GUI程序,像std::cout 和 printf()这样的函数,就无法使用了,(不是使用了,程序就编译不了,是可以通过编译的,只是你不会看到这些函数打印出的信息。)
Visual Studio给我们提供了一个“控制台” — 输出窗口。我们要使用什么函数才能将调试信息打印到输出窗口里面呢? 看看下面的方法吧
程序
#include "atlbase.h"
#include "atlstr.h"
void OutputDebugPrintf(const char* strOutputString,...)
{
char strBuffer[4096]={0};
va_list vlArgs;
va_start(vlArgs,strOutputString);
_vsnprintf_s(strBuffer,sizeof(strBuffer)-1,strOutputString,vlArgs);
//vsprintf(strBuffer,strOutputString,vlArgs);
va_end(vlArgs);
OutputDebugString(CA2W(strBuffer));
}
int main(){
int i = 10;
OutputDebugPrintf("I'm %d years old.\n", i);
while(1){}
return 0;
}
OutputDebugPrintf()
这个函数的使用方法,和printf()
函数一样。
配置
对着项目,点击鼠标右键,打开属性
选择配置属性 -> 常规 。 将字符集 设置为使用Unicode字符集
运行结果
程序解释
#include "atlbase.h"
#include "atlstr.h"
这两个头文件是给这个CA2W()
宏函数准备的。这个宏函数的功能是:将ANSI character string转化为Unicode character string的函数。
参考网站:
http://topic.okbase.net/200612/2006121309/2810980.html
http://ztbls888.blog.163.com/blog/static/171817598201272805923298/