运行matlab时出现 ??? Attempt to execute SCRIPT class as a function.,该怎么解决

syms a x;f=a*sin(x)+5
f1=subs(f,'sin(x)',sym('y'))
class(f1)
是这样的,很莫名其妙,在M文件夹里运行就会有错误在命令窗口:
>> syms a x;f=a*sin(x)+5
f1=subs(f,'sin(x)',sym('y'))
class(f1)
??? Attempt to execute SCRIPT class as a function.

Error in ==> sym.sym>char2sym at 385
S = class(struct('s',x),'sym');

Error in ==> sym.sym at 92
S = char2sym(x);

Error in ==> syms at 74
assignin('caller',x,sym(x));
但是把M文件复制到桌面运行就没错误,真是搞不懂,还望高手指教
??? Attempt to execute SCRIPT error as a function
这句话的意思是尝试将脚本文件当做函数文件。你运行时出错的原因可能是m文件开头没写函数名,或者是扰李函数名与内部函数名冲突了。请把一下代码保存为myCode.m, 然后再按F5执行:

function myCode( )
clc;
syms a x;
f=a*sin(x)+5;
f1=subs(f,'sin(x)',sym('y'));
class(f1)

如果还有错误,请把你的执行过程描述清楚贴上来。

补充回答:
你用cd命令检查一下你的matlab的默认工作目录是不是桌汪李尘面文件夹?如果是的话困禅,改回M文件夹再试试。再就是你自己写的程序的m文件名,一定不能与已有的函数冲突。
可能时@用法,和句柄函数相关,我也遇到过。
我运行时没有任何错误。
运行matlab时出现 ??? Attempt to execute SCRIPT class as a function.,该怎么解决
← 上一篇: 下一篇: →