eval - Evaluate MATLAB expression - MATLAB (original) (raw)
Main Content
Evaluate MATLAB expression
Syntax
Description
eval([expression](#mw%5Fda6cc3d7-b0f6-46b1-9e81-f9c96e554611))
evaluates the MATLABĀ® code in expression
.
Note
Security Considerations: Before callingeval
with untrusted user input, validate the input to avoid unexpected code execution. Examples of untrusted user input are data from a user you might not know or from a source you have no control over. If you need to address this concern, consider these approaches:
- Validate inputs to
eval
. First, search for allowed operations. Then, if you find other operations, disallow execution. - Replace
eval
with an alternative. For more information, see Alternatives to the eval Function.
Performance Considerations: In most cases, using theeval
function is less efficient than using other MATLAB functions and language constructs, and the resulting code can be more difficult to read and debug. Consider using an alternative toeval
.
[[output1,...,outputN](#mw%5F0ff7b211-7176-42fa-9742-aa4189ef105c)] = eval([expression](#mw%5Fda6cc3d7-b0f6-46b1-9e81-f9c96e554611))
returns the outputs from expression
in the specified variables.
Examples
Use eval
to evaluate and plot the expression magic(5)
.
Z = eval('magic(5)'); mesh(Z)
Input Arguments
Expression to evaluate, specified as a character vector or string scalar.expression
must be a valid MATLAB expression and must not include any MATLAB keywords. To determine whether a word is a MATLAB keyword, use the iskeyword function.
Example: eval('magic(5)')
Output Arguments
Outputs from evaluated expression, returned as any MATLAB data type.
Limitations
- If you use
eval
within an anonymous function, nested function, or function that contains a nested function, the evaluatedexpression
does not create any variables.
Tips
- To allow the MATLAB parser to perform stricter checks on your code and avoid untrapped errors and other unexpected behaviors, do not include output arguments in the input to the
eval
function. For example, the statementeval(['output = ',expression])
is not recommended.
Instead, specify output arguments to theeval
function to store the results of the evaluated expression. For example:
output = eval(expression)
Extended Capabilities
Version History
Introduced before R2006a