Main Content

eval

Évaluer une expression MATLAB

Description

exemple

eval(expression) évalue le code MATLAB® dans expression.

Remarque

Considérations de sécurité : Lorsque vous appelez eval à l’aide d’une entrée utilisateur non fiable, validez l’entrée pour éviter toute exécution non attendue du code. Les entrées d’utilisateurs non fiables incluent les données provenant d’utilisateurs que vous ne connaissez pas ou d’une source que vous ne contrôlez pas. Si vous être confronté à cette problématique, songez aux approches suivantes :

  • Validez les entrées de eval. Tout d’abord, recherchez les opérations autorisées. Ensuite, si vous trouvez d’autres opérations, désactivez l’exécution.

  • Remplacez eval par une alternative. Pour plus d’informations, consultez Alternatives to the eval Function.

Considérations liées aux performances : Dans la plupart des cas, l’utilisation de la fonction eval est également moins efficace par rapport à l’utilisation d’autres fonctions et constructions MATLAB. Le code en résultant peut être plus difficile à lire et à débugger. Envisagez l’utilisation d’une alternative à eval.

exemple

[output1,...,outputN] = eval(expression) renvoie les sorties de expression dans les variables spécifiées.

Exemples

réduire tout

Utilisez eval pour évaluer et représenter graphiquement l’expression magic(5).

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

Mesh plot of Z.

Arguments d'entrée

réduire tout

Expression à évaluer, spécifiée en tant que vecteur de caractères ou scalaire de chaîne de caractères. expression doit être une expression MATLAB valide et ne pas inclure de mots clés MATLAB. Pour déterminer si un mot est un mot clé MATLAB, utilisez la fonction iskeyword.

Exemple : eval('magic(5)')

Arguments de sortie

réduire tout

Sorties d’une expression évaluée, renvoyée en tant que n'importe quel type de données MATLAB.

Limitations

  • Si vous utilisez eval au sein d’une fonction anonyme, d’une fonction imbriquée ou d’une fonction contenant une fonction imbriquée, l’expression évaluée ne crée aucune variable.

Conseils

  • Pour autoriser le parseur MATLAB à effectuer des vérifications plus strictes sur votre code et éviter toute erreur non identifiée ou tout autre comportement inattendu, n’incluez pas d’arguments de sortie en entrée de la fonction eval. Par exemple, l’instruction eval(['output = ',expression]) n’est pas recommandée.

    Spécifiez plutôt les arguments de sortie sur la fonction eval pour stocker les résultats de l’expression évaluée. Par exemple :

      output = eval(expression)

Capacités étendues

Historique des versions

Introduit avant R2006a