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

关于强制转换的有关问题

2012-05-09 
关于强制转换的问题我把一个CString的值用atoi转为int为什么会缺失精度呢?CString tem L231char* s

关于强制转换的问题
我把一个CString的值用atoi转为int
为什么会缺失精度呢?
CString tem = L"231";
char* s =(LPSTR)(LPCTSTR)tem.GetBuffer();
DirectoryLevel = atoi(s);

调试的时候显示s的值就是2了,为什么??

[解决办法]
你可以直接用
CString tem = L"231";
DirectoryLevel = _wtoi(tem);
还不让我编译上一条啊,呵呵!
[解决办法]
字符集的问题,你使用的是宽字符,而atoi要求的是char

C/C++ code
CString tem = L"231";DirectoryLevel = _wtoi(tem); 

热点排行