jeffson17 发表于 2007-11-23 10:42

Input argument "t" is undefined 出错

我的函数定义如下:function f=heaviside(t)
f=(t>0)
为什么运行时总是提示??? Input argument "t" is undefined.
Error in ==> Heaviside at 2
f=(t>0)
可是在别人机子上都能运行啊,就我的机子不行:@(

[ 本帖最后由 eight 于 2007-11-23 10:53 编辑 ]

lxq 发表于 2007-11-23 10:51

函数中没有定义变量t

看看目录下是否有相联系的脚本文件

eight 发表于 2007-11-23 10:54

请在置顶帖中找答案

jeffson17 发表于 2007-11-23 11:05

回复 #3 eight 的帖子

我想问的是为什么同一个程序别人的机子能运行我却不能?是不是哪里没有设置好?

eight 发表于 2007-11-23 11:09

原帖由 jeffson17 于 2007-11-23 11:05 发表 http://www.chinavib.com/forum/images/common/back.gif
我想问的是为什么同一个程序别人的机子能运行我却不能?是不是哪里没有设置好?

6. 如果你编写的函数带有输入参数(例如 x ),则跟其他语言一样,这只是形式参数,所以不能通过直接运行该函数(或者m文件)来测试,这样会出现 ??? Input argument "x" is undefined. 的错误。一定要从其他地方(如命令窗口或者其他函数对其调用)来传递真实值,此时 x 才是实际参数。

花如月 发表于 2007-11-23 16:18

回复 #4 jeffson17 的帖子

如果确实别人可以用,你不能用,而且你们的版本相同。那就一定是你的用法有问题,发帖描述问题的时候要尽量清楚,不要让别人猜测

xjzuo 发表于 2007-11-23 22:29

老实讲,这种简单问题应该是很明显的,试试以下代码,应该不会再有疑问了。
%%%%%%%%%%%
clear all
x=0:10;
y=heaviside(x);
plot(x,y)
%%%%%%%%%%%

haiming627 发表于 2008-5-4 16:55

:@) :@) 我试过……还是不行啊!!

sogooda 发表于 2008-5-4 20:47

强烈建议楼主先找本matlab书看看。
下面的代码是不是没有存为m文件?或者是存为m文件而直接点击了run?

function f=heaviside(t)
f=(t>0)

参考7楼xjzuo版主的意见。
页: [1]
查看完整版本: Input argument "t" is undefined 出错