想实现的是:在一个编辑框中输入6位的数字,点击一个按钮,在另一个编辑框显示每位数字相加的和。如:编辑框1中输入 “012345”,点击按钮后,另一个编辑框显示“15”我在用VS2005尝试,但是对一些数据格式、api不熟悉,难以下手
获取了编辑框的字符,写在一个CString的变量里,但是却不知道怎么把它的格式转换成int型的数组,百度了一些文章,弄进去都有这样那样的错误,实在没辙了。请好心人帮忙提供一下程序,谢谢

解决方案 »

  1.   

    这简单啊,你可以用下面两种方法:1、直接获取编辑框的int类型值,然后循环做 模10运算,即可得到各位上的数,然后相加,得到结果,再显示到你的结果编辑框中。2,、获取编辑框的CString 类型变量,然后通过对每一位字符进行判断,用一个int 类型变量num来存储结果,比如字符串为"012345",那么,第3个字符为 '2',则其对应的数字为('2'-'0'),也就是 2,则num+=2;
    用这样的方法循环完整个字符串即可。不过这种方法稍微麻烦点。不如第一种方法简单明了!
      

  2.   

    我弄了个简单的例子,用的方法1:void CMyDlg::OnButton1() 
    {
    // TODO: Add your control notification handler code here int tem=GetDlgItemInt(IDC_EDIT1);
    int num=0;
    while(tem>=10)
    {
    num+=(tem%10);
    tem=tem/10;
    }
    num+=tem; SetDlgItemInt(IDC_EDIT2,num);

    }
      

  3.   

    void CMyDlg::OnButton1() 
    {
        // TODO: Add your control notification handler code here
        UpdateData();
        int sum=0;
        for( int i=0;i<m_strText1.GetLength();i++ )
             sum+=m_strText1.GetAt(i)-'0';
        m_strText1.Format("%d",sum);
        UpdateData(FALSE);
      
    }
      

  4.   

    谢谢这个接口就好办了GetDlgItemInt,
    我是搞嵌入式的,不了解windows编程的接口啊