如何将值传递给Matlab中的子函数?我得到的是输出错误?

如何将值传递给Matlab中的子函数?我得到的是输出错误?,matlab,Matlab,下面是我在Matlab中的代码,我遇到了行和=(h/2)*(f(a)+f(b))+h的问题;Matlab说,当我试图调用f(x)函数时,我需要很多输出。是我的f(x)函数的问题吗 您需要在函数中指定返回的变量。例如,在C++中有一个显式的返回< />代码> - MATLAB如何知道需要返回什么?您可以在签名中指定它,即在本例中f_of_z function f_of_z = f(z) f_of_z = exp(z); end 是的,您的问题在子函数中:它应该返回一个输出(也许您的主函数也应

下面是我在Matlab中的代码,我遇到了行和=(h/2)*(f(a)+f(b))+h的问题;Matlab说,当我试图调用f(x)函数时,我需要很多输出。是我的f(x)函数的问题吗


您需要在函数中指定返回的变量。例如,在C++中有一个显式的<代码>返回< />代码> - MATLAB如何知道需要返回什么?您可以在签名中指定它,即在本例中
f_of_z

function f_of_z = f(z)

f_of_z = exp(z);

end

是的,您的问题在子函数中:它应该返回一个输出(也许您的主函数也应该这样做)

而不是

function f(z)
f=exp(z);
end
你应该写

function out = f(z)
out = exp(z)
end

我这里没有matlab来测试,不管怎样,f的代码应该是

function y = f(z)
   y = exp(z);
end
function y = f(z)
   y = exp(z);
end