MFC中的字符串到整数转换

时间:2015-04-01 12:20:01

标签: c++ mfc editbox

我只是MFC平台的初学者。我只想尝试一个简单的pgm。在2个编辑框中获取2个数字,并在单击按钮时在第三个编辑框中显示总和。

这是我的代码:

void CMineDlg::OnEnChangeNumber1()
{
   CString strNum1,strNum2;
   m_Number1.GetWindowText(strNum1,10);   //m_NUmber1 is variable to 1st edit box.
   m_Number2.GetWindowText(strNum2,10);   //m_Number2 is variable to 2nd edit box.
} 

void CMineDlg::OnBnClickedSum()
{
   m_Result=m_Number1+m_Number2;
}

我知道我必须将字符串转换为整数。但我不知道该怎么做。请帮助。

3 个答案:

答案 0 :(得分:2)

您可以使用类向导添加整数类型的变量,并将它们与编辑框关联。然后,在OnEnChangeNumber1事件处理程序(或OnBnClickedSum)中,您只需调用UpdateData(TRUE);,这会导致这些变量更新其值。之后,您可以对这些整数变量求和。

答案 1 :(得分:0)

使用

CString strNum = _T("11");  //CString variable
int num;                //Integer Variable
_stscanf(strNum, _T("%d"), &num);   //Conversion

或者

num = atoi((char*)(LPCTSTR)strNum);  

答案 2 :(得分:-1)

符合UNICODE标准的正确方法:

CString str = _T("10");
int nVal = _ttoi(str);
__int64 = _ttoi64(str);