首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

VS2010 字符集的有关问题

2013-01-25 
VS2010 字符集的问题VS2010 字符集的问题 大家好,VS2010的功能实在强大,但是字符操作实在令人头疼VS2010默

VS2010 字符集的问题
VS2010 字符集的问题 
大家好,VS2010的功能实在强大,但是字符操作实在令人头疼
VS2010默认的字符集是UNICODE,很多字符转换存在问题,格式要求特别严格
请教大家一个具体问题:
CString str;转char a[200];
sprintf(a,"%s",str);
strcpy(a,(char *)str);
这些传统方法都不行!!有人说,把UNICODE改为ANSI,但是VS的项目配置下没有ANSi这个字符集,只有其他的,每个试了都不行!!
请教大家怎么解决!
谢啦(请在VS2010下测试正确再说方法……)
[解决办法]
VS2010项目中有ANSI字符集,在项目属性中选择"多字节字符集"即可

转换代码可用如下:
#include <AtlConv.h>

USES_CONVERSION;
char *dst = W2A(str);
[解决办法]
一个好习惯:
所有的char用 TCHAR 替换, strcpy 等字符操作函数都用 _tcscpy

或者
工程属性--字符编码 multi-btye
[解决办法]
char 都用TCHAR
CString str;转TCHAR a[200];
sprintf_s(a,_T("%s"),str);
strcpy_s(a,(char *)str);

这样改试试!


[解决办法]
点击菜单 “项目”->“工程名 属性”->“属性页”->“配置属性”->“常规”->“字符集”->“使用多字节字符集”

热点排行