用VS2008如何将CSTRING转换为CHAR数组??(C++ MFC)
不是6.0啊,是VS2008,6.0可以强制转换,也可以利用GetBuffer和strcpy转换,但是这些方法在05开始就不生效了.请问在08的IDE下如何转换...
不是6.0啊,是VS2008,6.0可以强制转换,也可以利用GetBuffer和strcpy转换,但是这些方法在05开始就不生效了.请问在08 的IDE下如何转换
展开
2个回答
展开全部
使用strcpy不行是因为VS2008工程默认为unicode字符集,所以使用的实际上是CStringW类,那你当然不能使用strcpy函数了,两个方法可以解决(其中任何一个方法均可,切不可同时使用两个方法):
1.选择菜单“项目->属性”,再弹出的对话框左侧选择“配置属性”下的“常规”选项卡,在右侧窗口中找到“字符集”,将字符集改为“使用多字节字符集”。这样你就可以使用strcpy函数转换了。
2.像下面这样写程序:
CString str("hello");
char str2[128];
sprintf(str2, "%S", str);//注意这个大写的S。
1.选择菜单“项目->属性”,再弹出的对话框左侧选择“配置属性”下的“常规”选项卡,在右侧窗口中找到“字符集”,将字符集改为“使用多字节字符集”。这样你就可以使用strcpy函数转换了。
2.像下面这样写程序:
CString str("hello");
char str2[128];
sprintf(str2, "%S", str);//注意这个大写的S。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询