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

CString 转换到 Int 的有关问题

2012-10-16 
CString 转换到 Int 的问题按照网上的帖子写了这段代码,结果测试了,对话框弹出来是空的C/C++ codeCString

CString 转换到 Int 的问题
按照网上的帖子写了这段代码,结果测试了,对话框弹出来是空的

C/C++ code
CString a = _T("123");int b = _ttoi((LPCTSTR)a);MessageBox((LPCTSTR)b);


后来分解了成下面这段代码

C/C++ code
CString a = _T("123");LPCTSTR Temp = (LPCTSTR)a;int b = _ttoi(Temp);MessageBox(Temp);MessageBox((LPCTSTR)b);


第一个对话框可以显示123,第二个对话框还是空
编译环境VS2010,求解

[解决办法]
int型再转换成字符串
C/C++ code
CString a = _T("123");int b = _ttoi((LPCTSTR)a);CString c;c.Format(_T("%d"), b);MessageBox(c);
[解决办法]
探讨
int型再转换成字符串

C/C++ code

CString a = _T("123");
int b = _ttoi((LPCTSTR)a);
CString c;
c.Format(_T("%d"), b);
MessageBox(c);

[解决办法]
MessageBox((LPCTSTR)b);
这句话有问题吧,成了直接显示0x0000 0123地址处的字符了
[解决办法]
探讨
int型再转换成字符串

C/C++ code

CString a = _T("123");
int b = _ttoi((LPCTSTR)a);
CString c;
c.Format(_T("%d"), b);
MessageBox(c);

[解决办法]
Messagebox显示的是字符串,不能直接显示整型的
因此要把转化为整型的数再转为字符串。
[解决办法]
你先把CString转换成int,又把int转成LPCTSTR字符串指针,再送给MessageBox显示,呜呜呜,楼主真有闲情逸致呀,直接来个AfxMessageBox(CString)不就OK了吗?

热点排行