C#First Special Char

时间:2014-09-17 21:51:59

标签: c# string

我正在尝试编写一个计算器只是为了它的乐趣,第一点很容易。 即使使用更多相同类型的计算,也可以进行计算,例如10 + 10 + 10 我的问题来自于当我尝试使用diffrendt计算方法进行长字符串时如何执行此操作。

Ex 10 + 15-5和10-15 + 5给出了非常不同的结果。但是目前我无法存档,因为我的代码在同一个字符串中支持diffrendt计算方法,所以我需要一种方法来查看字符串中发布的计算方法。

我在字符串上使用了.split(' - ','+')但是这让我陷入了一个问题,我无法找到第一个将字符串拆分为什么字符的char,所以我不知道叫什么方法..

我认为最后的事情会是这样的。

If(stringSplitChar == +)
{
     int tempRes;

     tempRes = Convert.ToInt32(SplitVal[0]);

     for (i = 1; i < SplitVal.Count(); i++)
     {
         tempRes = addVal(tempRes, Convert.ToInt32(SplitVal[i]));
     }

     endRes = tempRes.ToString(););
}

endRes = temp;

return endRes;

2 个答案:

答案 0 :(得分:0)

要公平你需要单独获得,如果你想在没有......的情况下这样做。

      using System;
      using System.Data;

      class Program {
      static void Main(string[] args) {
      string s ="10+20+30"
      var dt = new DataTable();
      var result = dt.Compute(s, null);

       }
      }

答案 1 :(得分:0)

你应该学习解析,语法树,......

您可以查看现有项目以了解其工作原理。例如ncalc