我正在使用以下代码处理VS C#,它转换用户输入数学表达式并计算它.
MSScriptControl.ScriptControl sc = new MSScriptControl.ScriptControl();
sc.Language = "VBScript";
sc.ExecuteStatement(
"function pi\n"
+ "pi = 3.14159265\n"
+ "end function");
sc.ExecuteStatement(
"function e\n"
+ "e = exp(1)\n"
+ "end function");
expression = textBox1.Text.ToString();
expression = expression.Replace("x", i.ToString());
object y = sc.Eval(expression);
string k = y.ToString();
double result = double.Parse(k);
Run Code Online (Sandbox Code Playgroud)
虽然这会以正确的结果输出到控制台上,但是我想使用这些值来绘制功能用户输入的图形并且它没有正确执行.
谢谢您的帮助.
使用演员表:
double result = (double)y;
Run Code Online (Sandbox Code Playgroud)
或者,如果它不起作用,请尝试Convert.ToDouble:
double result = Convert.ToDouble(y);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5724 次 |
| 最近记录: |