回 帖 发 新 帖 刷新版面

主题:做了个计算器,一直出好多bug 需求帮助

我在MyCalculatorDlg.h里先声明了个函数  afx_msg void UpdateDisplay(double);
  在MyCalculatorDlg.cpp 定义
    void CMyCalculatorDlg::UpdateDisplay(double lVal)
    {
        m_display.Format(_T("%f"),lVal);
        int i=m_display.GetLength();
        while(m_display.GetAt(i-1)=='0')
        {
            m_display.Delete(i-1,1);i--;
        }
        UpdateData(false);
    }
不懂为什么原本是想运用这个函数进行更新,但是一直出问题,比如我的数字按钮1代码
    void CMyCalculatorDlg::OnButton1() 
    {
    if(m_coff==1.0)
        m_second=m_second*10+1 ;//作为整数输入,second用于存入当前输入    数字
    else                        //作为小数    输入
        {
            m_second=m_second+1*m_coff;
            m_coff*=0.1;
        }
        UpdateDisplay(m_second); //更新
    // TODO: Add your control notification handler code here
    
    }
这个结果是只能输入7个1,再点击就出问题了。想问下 这个UpdateDisplay出啥问题了!

回复列表 (共1个回复)

沙发

新手学习部容易啊,高手们回答下吧

我来回复

您尚未登录,请登录后再回复。点此登录或注册