【问题标题】:How to evalute a math expression given in string form in C#? [duplicate]如何在 C# 中评估以字符串形式给出的数学表达式? [复制]
【发布时间】:2021-03-05 00:05:01
【问题描述】:

我对编程和 c# 还很陌生。我尝试在 Visual Studio C# 中编写一个简单的计算器程序时遇到问题。我想将带有数字和数学运算符的文本转换为数字。到目前为止,我所有的尝试都没有成功。 我试过了:

  • Double.Parse()
  • Convert.Int32()
  • Convert.Double()

以下是我的代码的一些图片: Pic One Pic Two

任何帮助将不胜感激,如果您需要任何额外的信息,我很乐意提供。

-Retro_Goat

【问题讨论】:

    标签: c# type-conversion


    【解决方案1】:

    对于图 1 C#不能接受方程字符串并将其转换为结果,它可以采用方程形式的值并将其转换为结果,即

    int val = Convert.ToInt32((7 + 3) * 3.5);
    

    如果您有一个方程字符串,您需要循环遍历字符串,将值和操作分开,并将它们作为值处理或使用处理对象,请参阅StackOverflow link

    对于图 2

            double val = 0;
            if(double.TryParse(lblDisplay.Text, out val))
            {
                // val is set to the string value
            }
            else 
            {
               // The string was not a valid number
            }
    

    【讨论】:

    • 你可以在c#中将字符串计算为表达式
    • int val = Convert.ToInt32("7 + 3");在 C# 中无效,这是我试图传授的内容
    • 不,不是那样的。就像在我提出的重复链接中一样。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多