M+按钮因内存格式而崩溃

本文关键字:崩溃 格式 内存 按钮 | 更新日期: 2023-09-27 17:58:42

im是c#的新手

所以我几乎已经完成了我的计算器,一切都正常,但当我启动程序并按下M+按钮时,当"0"是唯一输入文本框的数字时,程序崩溃了。

这个按钮的作用是将文本框中的内容添加到当前内存中。我想这是因为记忆当时没有存储任何东西,所以是的,我只是不知道如何修复它,如果我错了,就纠正我。

这是我目前掌握的代码。

字符串内存=";

    private void mDBtn_Click(object sender, EventArgs e)
    {
        txtDisplay.Text = "M+";
        double calcp = double.Parse(memory);
        double calcp2 = calcp + double.Parse(displaytxt.Text);
        memory = calcp2.ToString();
    }

回答。那很快。谢谢:)

M+按钮因内存格式而崩溃

一个选项是为"内存"字段使用正确的数据类型,而不是每次解析stringdouble听起来不错。

 private double memory;

请注意,您可能想要使用double?,因为您需要使用HasValue检查来处理"内存中没有任何内容"的特殊情况:

 double? memory;
 ...
 if (memory.HasValue)...