hur.cn - 华软网

 热门搜索

VC2008中的CString 默认是? CStringT还是CStringA,如何强制设置默认

  作者:未知    来源:网络    更新时间:2011/8/19
VC2008中的CString 默认是? CStringT还是CStringA,如何强制设置默认
我要的是char型,如何设置成默认为CStringA?
谢谢

---华软 网友回答---
没人顶吗?我顶,直到高手回答我
---华软网友回复---
这个根据工程的字符集来确定的,UINICODE工程默认是CStringW,
多字节工程默认是CStringA;
---华软网友回复---
利用MultiByteToWideChar和WideCharToMultiByte函数在Unicode和ANSI之间转换来
---华软网友回复---
利用MultiByteToWideChar和WideCharToMultiByte函数在Unicode和ANSI之间转换来
---华软网友回复---
定义成CStringA就可以了满足lz要求
---华软网友回复---
直接声明为cstringA
---华软网友回复---
引用楼主 cbx_xx 的回复:
VC2008中的CString 默认是? CStringT还是CStringA,如何强制设置默认
我要的是char型,如何设置成默认为CStringA?
谢谢

修改工程编码为multi byte方式
---华软网友回复---
直接用CStringA或CStringW,自由控制多好,好在俺尽量不用CString。

---华软网友回复---
好像是设置是否使用宽字节而定。
---华软网友回复---
vs2008默认为unicode,你可以在工程属性中直接改成多字节的就可以了
---华软网友回复---
Unicode编程好处多,不容易乱码或出现编码损失,而且NT内核的Windows API本身都是Unicode的,ANSI接口要多一层转换,就多一层损失。所以应该尽量用Unicode工程,用CStringT增加可以移植性。只有部分需要的代码再用CStringA,MFC重载了它们赋值运算符,会自动进行转换的。
---华软网友回复---
工程默认是UINCODE的
---华软网友回复---
// VC2008中的CString 默认是? CStringT还是CStringA
// 应该是CStringW和CStringA
// CStringT是根据工程设定自适应的。
// char* 就直接定义成char *好了。
---华软网友回复---
直接用CString      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。