登录论坛

查看完整版本 : [分享]我的低级错误


shipf2007
2008-03-26, 17:11
我是一个初学者,在练习使用函数时,为了图省事,就把写的m文件命名为所练习的函数的名字,例如练习polar函数:
theta=0:0.01:2*pi
rho=sin(2*theta).*cos(2*theta)
polar(theta,rho,'k')
然后把m文件命名成了polar.m
结果就出现了下面的问题:
??? Attempt to execute SCRIPT polar as a function.

Error in ==> polar at 3
polar(theta,rho,'k')
希望能够成为前车之鉴。
同时再次谢谢无私帮助我的人们!

dnping
2008-03-26, 18:32
楼主能够自己发现错误并提供经验,值得学习,谢谢楼主的分享。
在matlab里面,由于matlab有很多自带的函数,如果你的函数命名和matlab自带的函数名称一致,就会报错。

所以在自己编写程序的时候先看看你的变量名和函数名是否合法,这个可以用两个命令来检验:
isvarname('.') : 检验你的变量名是否重复,如果重复,就返回0
help .: 可以检查下你命名的函数是否和matlab函数重复了。

xylee
2008-03-27, 21:07
楼主能够自己发现错误并提供经验,值得学习,谢谢楼主的分享。
在matlab里面,由于matlab有很多自带的函数,如果你的函数命名和matlab自带的函数名称一致,就会报错。

所以在自己编写程序的时候先看看你的变量名和函数名是否合法,这个可以用两个命令来检验:
isvarname('.')...
原来help也可以这样用的…………领教了

shiqiang
2008-03-27, 21:43
该楼主的想法不错,建议版主建立一个收集自己发现低级错误的讨论区,这样方便那些有类似情况的人直接在里面寻找或者大家吸取教训。

yylyshyy
2008-07-23, 20:07
m文件命名有一定规则的,如不可以用数字

mathjiang
2008-07-23, 21:29
楼上,matlab命名规则是第一个字符不能是阿拉伯数字。