为什么VS2005用不到atoi?
我用的是VS2005,做一个MFC的对话框,想把一个CString的字符串转化为数字,见到前面的帖子说可以用atoi,就这样用了:
CString s="123";
int i;
i=atoi(s);
编译结果是:
e:\项目\计算器1\计算器1\计算器1dlg.cpp(274) : error C2664: “atoi”: 不能将参数 1 从“CString”转换为“const char *”
没有可用于执行该转换的用户定义的转换运算符,或者无法调用该运算符
请问是什么回事呢?
问题点数:20、回复次数:5Top
1 楼vcmute(BCare4 H1Rest Good9!)回复于 2006-03-02 22:36:28 得分 0
_ttoi(Top
2 楼vcmute(BCare4 H1Rest Good9!)回复于 2006-03-02 22:38:42 得分 0
因为默认是_UNICODE
所以只能直接转const wchar_t *Top
3 楼ggw(格格巫)回复于 2006-03-03 09:23:26 得分 0
CString != const char *
先将CString转成const char *Top
4 楼chqu18(无色无味)回复于 2006-03-03 09:31:21 得分 0
2005有时候用得不爽。Top
5 楼snakebite2008(3DFX)回复于 2006-03-03 09:41:53 得分 0
只能说2005变得更严谨了Top




