MATLAB 函数的一个输入变量是另一个函数?

比如有一个function [a,b]=example(c,d,e...)....
还有一个function a=example(f,g,h.....)......
请问这个比如example里的输入参数C可不可以是另一个function(比如说example2)?。。。

元芳怎么了
浏览 1730回答 2
2回答

鸿蒙传说

可以,比如你将第二个的function a=example(f,g,h.....)......输入给function [a,b]=example(c,d,e...)....的c,只需要,再第二个变形成function [a,b]=example(a,d,e...)....是的简单的将第一个函数值赋值给c,就这个意思还有另一种情况的函数里面带入函数,即句柄比如现在我们定义h=@sin,现在h可以当sin用了比如h(pi/6)=sin(pi/6)然后,,,将h带入另一个函数,比如cos(h(pi/6))或者带入某些特定函数,要求特定格式的函数比如fminsearch这个函数是用来求某一个多元函数,在某一个点附近的最小值及最小值所在的点的x值比如f(x)=x1+x2现在我们求这个函数在(0,0)附近的最小值及最小值所在的点的x值用法是(特定格式)[x,fval]=fminsearch(@(x) f(x) [0,0]) 表示求这个函数f(x)以x为自变量 ,在点(0,0)附近的最小值及最小值所在的点的x值运行结果是x=这个就不算了,,,fval=这个也不算了。。。这个表示这一点的函数值

SMILET

好像 不能吧,你可以这样写,不过matlab会把这个输入当字符串 而不会真的去运行example2例如你有function [a,b]=example(c,d,e...)有function a=example2(f,g,h.....)你可以写[a,b]=example(example2,d,e...)但有可能会出错,example2在这里就变成了原来的c,只是一个变量,不是example2这个函数本身
打开App,查看更多内容
随时随地看视频慕课网APP