VS中关于字符集的问题
来源:互联网 发布:程序员面试宝典 pdf 编辑:程序博客网 时间:2024/06/05 11:36
VS2012以后版本中默认编码字符集为Unicode,LPSTR被LPCWSTR取代。几乎所有之前版本中形参类型为LPSTR的函数都被改成了形参类型为LPCWSTR,比如CreateWindow的第一和第二个形参。
所以在VS2012以后版本中应避免使用LPSTR而改成LPCWSTR。
另外,若是传入字符串常量必须使用TEXT()宏,否则会报错为类型不匹配。
LPSTR和LPWSTR是Win32和VC++所使用的一种字符串数据类型。LPSTR被定义成是一个指向以NULL(‘\0’)结尾的32位ANSI字符数组指针,而LPWSTR是一个指向以NULL结尾的64位双字节字符数组指针。CString与LPSTR转换。
'L'代表Long,'P'代表Pointer(指针),'STR'表示String。
1:CString转换成LPSTR
CString strFileName;LPSTR lpStr = (LPSTR)(LPCSTR)strFileName;
LPSTR转换成CString
LPSTR lpStr = _T("TestStr");CString str(lpStr);
注意:CString和LPCSTR可直接转换,如下:
CString str;LPCSTR lpcStr = (LPCSTR)str;LPSTR在msdn中的定义
typedef LPSTR char * ;
由此可见,LPSTR实际数据类型就是字符指针。
0 0
- VS中关于字符集的问题
- 关于vs 2008字符集问题
- VS 2005 中关于编译时使用那种字符集问题
- 关于java 中 各种字符集的问题
- 记录:vs中使用Unicode字符集时,wcout的问题
- 关于字符集的问题
- VS 2005 中关于编译时使用那种字符集问题 (转载)
- 关于vs中导入库的问题
- 关于php编程中出现乱码的字符集的问题
- 关于pl/sql中字符集乱码的问题
- 关于DataStage的字符集问题
- 关于MySql字符集的问题
- 关于sybase的字符集问题
- 关于ORACLE字符集的问题
- 关于Mysql字符集的问题
- 关于mysql字符集的问题
- 关于MySql字符集的问题
- 关于MySql字符集的问题
- React Native 开发报错: unrecognized font family 字体包名字
- ubuntu14.04 四种方式安装Pycharm
- Jsp中如何在<c:forEach >标签内获取items集合的长度方法
- CSS3盒子相关样式
- HTML常用标签
- VS中关于字符集的问题
- SSL阿里免费证书及IIS环境安装
- 爬虫入门实战课
- pm2部署nodejs项目
- mac 下安装lnmp环境
- php程序员的成长之路
- 错误 1 error LNK2019: 无法解析的外部符号 _WinMain@16,该符号在函数 ___tmainCRTStartup 中被引用 M
- TSQL语句练习题
- 笔记:根据进程判断应用是否运行了