用C++写的计算器,可以实现连加连乘,却不能实现连减连除。

switch(r) { case HWND_ADD: { m_curnumber=m_curnumber+m_oldnumber; break; } case HWND_SUB: { m_curnumber=m_oldnumber-m_curnumber; break; } case HWND_MUL: { m_curnumber=m_curnumber*m_oldnumber; break; } case HWND_DIV: { m_curnumber=m_oldnumber/m_curnumber; break; } }case HWND_SUB: { m_curnumber=m_oldnumber-m_curnumber; m_oldnumber=m_curnumber; m_curnumber=m_oldnumber; break; }可是这样也不对啊 改怎么改呢
2026年09月21日 04:54
有2个网友回答
网友(1):

12”“ -”“ 3”“ =” 显示结果为9 继续“=” 结果为3
m_curnumber=m_oldnumber-m_curnumber;
你看 第一次减法后 m_curnumber=9 m_oldnumber=12
第二次减法后 m_curnumber=3 m_oldnumber=12
第三次减法后 m_curnumber=9 m_oldnumber=12

你需要交换值 在每次减完后

网友(2):

不太明白m_curnumber,m_oldnumber的含义