函数在MATLAB中是如何工作的?

函数在MATLAB中是如何工作的?,matlab,function,Matlab,Function,这基本上就是我的函数(文件名为velocity.m)。起初,我认为括号[]之间的内容将是输出。当我在命令窗口中键入时,我只得到一个答案 function [dhdt, x] = velocity(t, h) dhdt = -9.8 * t; x = 4 * t; end 我希望得到一个包含dhdt和x velocity(1) %// -9.8 为什么会这样?如果不将输出存储到变量中,Matlab只显示一个输出。。。键入[dhdt,x]=velocity(1),您将看到这两

这基本上就是我的函数(文件名为
velocity.m
)。起初,我认为括号
[]
之间的内容将是输出。当我在命令窗口中键入时,我只得到一个答案

function [dhdt, x] = velocity(t, h)
    dhdt = -9.8 * t;
    x = 4 * t;
end
我希望得到一个包含
dhdt
x

velocity(1)

%//  -9.8

为什么会这样?

如果不将输出存储到变量中,Matlab只显示一个输出。。。键入[dhdt,x]=velocity(1),您将看到这两个值,并将它们存储到变量中


此外,在这种情况下,您只需不提供h参数,因为它没有在函数中使用。如果在velocity()中使用h并调用velocity(1),它将中断

Matlab只显示一个输出,如果不将它们存储到变量中。。。键入[dhdt,x]=velocity(1),您将看到这两个值,并将它们存储到变量中

此外,在这种情况下,您只需不提供h参数,因为它没有在函数中使用。如果在velocity()中使用h并调用velocity(1),它将中断

泰!我知道关于“h”的事情,但是非常感谢你对此进行了详细的阐述,如果你确实想要一个数组,那么在你的函数中创建数组并返回一个变量:
function y=velocity(t);y=[-9.8*t,4*t];结束
ty!我知道关于“h”的事情,但是非常感谢你对此进行了详细的阐述,如果你确实想要一个数组,那么在你的函数中创建数组并返回一个变量:
function y=velocity(t);y=[-9.8*t,4*t];结束
velocity(1)
%//  -9.8  4