主要内容

evalc.

评估马铃薯表达和捕获结果

描述

例子

结果= evalc(表达评估matlab.®代表代码表达并捕获通常将写入命令窗口的任何内容结果

笔记

安全考虑因素:在呼唤时evalc.使用不受信任的用户输入,验证输入以避免意外代码执行。不受信任的用户输入的示例是来自用户的数据,您可能无法知道或从源无法控制的源。如果您需要解决此问题,请考虑以下方法:

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

  • 代替evalc.另一种选择。有关更多信息,请参阅eval功能的替代方案

绩效考虑因素:在大多数情况下,使用evalc.函数也比使用其他MATLAB函数和语言构造效率较低,而结果代码可能更难以读取和调试。考虑使用替代方案evalc.

[结果Output1,...,outputn] = evalc(表达另外返回输出表达在指定的变量中。

例子

全部收缩

evalc.评估表达魔术(5)并存储结果。

结果= evalc('魔术(5)'
结果='ANS = 17 24 1 8 15 23 5 2 22 10 12 21 3 11 18 22 10 2 9'

输入参数

全部收缩

表达式以评估,指定为字符向量或字符串标量。表达必须是有效的MATLAB表达式,不得包含任何MATLAB关键字。要确定单词是否是MATLAB关键字,请使用iskeyword.功能。

例子:evalc('魔术(5)')

输出参数

全部收缩

捕获的命令窗口输出,返回为字符数组。捕获的输出中的各个线条分隔\ n人物。

评估表达式的输出,作为任何MATLAB数据类型返回。

限制

  • 使用时evalc.,功能日记更多的, 和输入被禁用。

  • 如果你使用evalc.在匿名函数中,嵌套函数或包含嵌套功能的函数,评估表达不创建任何变量。

尖端

  • 允许MATLAB解析器对代码进行更严格检查并避免未映射的错误和其他意外行为,不包括输入中的输出参数evalc.功能。例如,声明结果= evalc(['输出=',表达式))不推荐。

    相反,指定输出参数到evalc.存储评估表达式结果的功能。例如:

    [结果,输出] = evalc(表达式)
在R2006A之前介绍