MATLAB eval()函数错误

cag*_*dag 1 matlab eval

即使使用最简单的输入,eval()也会返回相同的错误.

>> ns=int2str(17)
>> xs=num2str(18)
>> d = eval(ns,'+',xs)
??? Index exceeds matrix dimensions.
>> eval('1/2')
??? Index exceeds matrix dimensions.
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激.

Amr*_*mro 5

clear all首先尝试..看起来你有一个叫做eval阴影函数的变量.

>> eval = 1;
>> which -all eval
eval is a variable.
built-in (C:\Program Files\MATLAB\R2010a\toolbox\matlab\lang\@char\eval)  % Shadowed char method
C:\Program Files\MATLAB\R2010a\toolbox\matlab\lang\@opaque\eval.m         % Shadowed opaque method
C:\Program Files\MATLAB\R2010a\toolbox\stats\@classregtree\eval.m         % Shadowed classregtree method
Run Code Online (Sandbox Code Playgroud)

  • 如果你不想丢失你的工作区,也许只是'清除eval` :) (2认同)