一直没好好学过VC,由于最近要上这个课..而VC6用起来不如VS2005爽,于是想安装VC++2005.
可不知道什么原因,最初安装VS2005时没有安装C++,而只安装了C#,现在再加装C++怎么都是失败的,卸载也失败,也是把VS2005的的相关注册表项一一搜索删除后再重装,用吃饭的时间把C++装好了..
新建一个Win32工程,ctrl+F5..呃.这个Hello World只在标题里有"Hello World"..视图区没有..于是自己跑到消息循环函数里加一个
TextOut(hdc,200,100,"Hello World",12);
结果编译失败..说那字符串无法从char*转换成LPCWSTR
这是什么..跟LPCSTR很像哎...顺着查找定义..原来LPCWSTR就是WCHAR*...WCHAR又是什么呢...
偶在winnt.h发现了定义:
typedef wchar_t WCHAR; // wc, 16-bit UNICODE character
噢~~~原来是16味的UNICODE字符..偶是VC++菜鸟,一直用VC6..原来这VC8也与时俱进了啊!~~
在网上查了下发现有很多人有跟偶一样的问题..最后偶把输出代码改成:
TextOut(hdc,200,100,L"Hello Visual Studio 2005",lstrlen(L"Hello Visual Studio 2005"));
成功~~
注意定义WCHAR字符串前要加L,还有strlen函数前面也有个小l哦~