Main Content

eval

Evaluar una expresión de MATLAB

Descripción

ejemplo

eval(expression) evalúa el código de MATLAB® en expression.

Nota

Consideraciones de seguridad: Al llamar a eval con una entrada del usuario que no es fiable, valide la entrada para evitar que se ejecute código de forma inesperada. Algunos ejemplos de entradas del usuario que no son fiables son los datos de un usuario que desconoce o de una fuente sobre la que no ejerce control alguno. Si necesita abordar este problema, considere estos enfoques:

  • Valide las entradas de eval. Primero, busque las operaciones permitidas. Después, si encuentra otras operaciones, deshabilite la ejecución.

  • Reemplace eval por una alternativa. Para obtener más información, consulte Alternativas a la función eval.

Consideraciones de rendimiento: En la mayoría de los casos, utilizar la función eval también es menos eficiente que utilizar otras funciones y estructuras del lenguaje de MATLAB, y el código resultante puede ser más difícil de leer y depurar. Considere utilizar una alternativa a eval.

ejemplo

[output1,...,outputN] = eval(expression) devuelve las salidas de expression en las variables especificadas.

Ejemplos

contraer todo

Utilice eval para evaluar y representar la expresión magic(5).

Z = eval('magic(5)');
mesh(Z)

Mesh plot of Z.

Argumentos de entrada

contraer todo

Expresión que se desea evaluar, especificada como vector de caracteres o escalar de cadena. expression debe ser una expresión de MATLAB válida y no debe incluir ninguna palabra clave de MATLAB. Para determinar si una palabra es una palabra clave de MATLAB, utilice la función iskeyword.

Ejemplo: eval('magic(5)')

Argumentos de salida

contraer todo

Salidas de la expresión evaluada, devueltas como cualquier tipo de datos de MATLAB.

Limitaciones

  • Si utiliza eval en una función anónima, una función anidada o una función que contiene una función anidada, la expression evaluada no crea ninguna variable.

Sugerencias

  • Para permitir al analizador de MATLAB realizar comprobaciones del código más estrictas y evitar errores sin detectar y otros comportamientos inesperados, no incluya argumentos de salida en la entrada de la función eval. Por ejemplo, no se recomienda la instrucción eval(['output = ',expression]).

    En su lugar, especifique argumentos de salida de la función eval para guardar los resultados de la expresión evaluada. Por ejemplo:

      output = eval(expression)

Capacidades ampliadas

Historial de versiones

Introducido antes de R2006a