vc2008中将CString转换为整数
⽤vc2008编写代码时,这样的语句会报错
CString str;
int nStr = atoi(str);
error C2664: “atoi”: 不能将参数 1 从“CString”转换为“const char *”
1> 没有可⽤于执⾏该转换的⽤户定义的转换运算符,或者⽆法调⽤该运算符
这是因为VC2008默认使⽤UNICODE编码的字符串,转化后的字符串是const wchar*
所以是不能强制转化的,这时,可以使⽤⼀种简单的⽅法来解决:
使⽤函数_ttoi,把只能接受多字节编码(MBCS)参数的atoi转换成同时⽀持宽字符编码和多字节编码cstring转为int
的通⽤函数_ttoi
CString str;
int nStr = _ttoi((LPCTSTR)str);
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论