首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C#求字符串表达式值,该怎么解决

2011-12-26 
C#求字符串表达式值用C#如何求字符串表达式值,如:string s(8+2)*8.8如何求得值88呢?有这样的函数吗?好

C#求字符串表达式值
用C#如何求字符串表达式值,如:string s="(8+2)*8.8";如何求得值88呢?有这样的函数吗?好像vbscript里面有个eval函数可以实现,不知到C#如何实现求值呢?望高手们赐教!!

[解决办法]
自己写个函数。。。
[解决办法]
Microsoft.JScript.Vsa.VsaEngine ve=Microsoft.JScript.Vsa.VsaEngine.CreateEngine();

 return Microsoft.JScript.Eval.JScriptEvaluate(Expression,ve);


[解决办法]
两个栈,一个存运算符,一个存操作数,如果要入栈的运算符优先级低于栈顶,则(弹出栈顶运算符,弹出两个操作数,计算结果,压入操作数栈中),然后压入运算符。如果碰到右扩号的话,那就一路弹出直到左扩号。并按照弹出顺序,进行计算
[解决办法]
参考: http://www.codeproject.com/csharp/runtime_eval.asp

热点排行