主要内容

evalc

评估MATLAB表达式和捕获结果

描述

例子

结果= evalc (表达式对MATLAB®代码所代表的表达式并捕获通常会写入命令窗口的任何内容结果

请注意

安全注意事项:当调用evalc对于不可信的用户输入,验证输入以避免意外的代码执行。不可信用户输入的例子包括来自您可能不认识的用户或来自您无法控制的源的数据。如果你需要解决这个问题,请考虑以下方法:

  • 验证输入evalc.首先,搜索允许的操作。然后,如果发现其他操作,则禁止执行。

  • 取代evalc与另一个。有关更多信息,请参见eval函数的替代方法

性能注意事项:在大多数情况下,使用evalc函数的效率也低于使用其他MATLAB函数和语言构造,并且生成的代码可能更难以阅读和调试。考虑使用替代evalc

结果output1,…,outputN) = evalc (表达式另外,返回的输出表达式在指定的变量中。

例子

全部折叠

使用evalc求表达式的值魔法(5)并存储结果。

结果= evalc (“魔(5)”
结果= ' ans = 17 24 18 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 '

输入参数

全部折叠

要计算的表达式,指定为字符向量或字符串标量。表达式必须是一个有效的MATLAB表达式,并且不能包含任何MATLAB关键字。要确定一个单词是否是MATLAB关键字,请使用iskeyword函数。

例子:evalc(“魔(5)”)

输出参数

全部折叠

捕获的命令窗口输出,作为字符数组返回。捕获的输出中的各个行用\ n字符。

从求值表达式的输出,作为任何MATLAB数据类型返回。

限制

  • 当使用evalc,功能日记更多的,输入是禁用的。

  • 如果你使用evalc在匿名函数、嵌套函数或包含嵌套函数的函数中,求值表达式不创建任何变量。

提示

  • 要允许MATLAB解析器对代码执行更严格的检查,并避免未被捕获的错误和其他意外行为,请不要在输入中包含输出参数evalc函数。例如,语句Result = evalc(['output = ',expression])不推荐。

    的输出参数evalc函数来存储求值表达式的结果。例如:

    [结果,输出]= evalc(表达)

扩展功能

之前介绍过的R2006a