How do i call a function inside another function?
142 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
i wrote 2 functions separately. in one of these functions, i need to call the other function inside it? how do i do that? Thanks :)
0 Kommentare
Antworten (2)
KSSV
am 3 Sep. 2016
I am giving an example here. The below first function calls a seconds function to calculate the sum of three numbers.
function K = firstfunction(a,b,c)
L = secondfunction(b,c) ;
K = a+L ;
This is the second function which calculates sum of two numbers.
function L = secondfunction(b,c)
L = b+c ;
Call the first function in Main file/ matlab work space:
s = firstfunction(1,2,3) ;
3 Kommentare
Stephen23
am 18 Dez. 2018
Bearbeitet: Stephen23
am 18 Dez. 2018
"My question is will the variable L be local or global to the calling function?"
L is not declared as global. It exists
- in the workspace where it is defined, and
- where it is passed as an output argument.
What do you mean by "the calling function" ?
Jan
am 18 Dez. 2018
@Soumen Kuma Mondal: Try it. It is very cheap to run the shown code and to use the debugger to step throught the code line by line. Then you can see in the WorkspaceBrowser, which variables are existing.
You need the command global to make a variable global. Another method to share data is to created a nested function:
function K = firstfunction(a,b,c)
L = secondfunction(b,c) ;
K = a+L ;
function L = secondfunction(b,c)
L = b+c ;
disp(K)
end
end
Now secondFunction is visible inside the firstFunction only and e.g. K is existing inside secondFunction.
KSSV
am 3 Sep. 2016
simple....write the function (output = functionname(inputs)) inside the function you want...
Siehe auch
Kategorien
Mehr zu Scope Variables and Generate Names finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!