To run a function
이전 댓글 표시
I have a question in my mind. Why we need to put square bracket containing all output arguments ahead of the function when running a function in the command window? Instead of directly calling the function.
Why only by typing the full command with the output arguments appearing at the beginning can we get the result?
댓글 수: 2
John D'Errico
2015년 7월 24일
Because that is how MATLAB syntax is defined? Software does what it is written to do, nothing more. MATLAB is just software.
Joy Tian
2015년 7월 24일
채택된 답변
추가 답변 (1개)
David Young
2015년 7월 23일
If you call the function without a result variable, MATLAB assigns the result to the variable ans. That is
min([3 2 1 5 6])
is the same in effect as
ans = min([3 2 1 5 6])
If you want to assign the result to some other variable, you can name it in front of the equals sign, with or without square brackets round it:
y = min([3 2 1 5 6])
or
[y] = min([3 2 1 5 6])
You only need the square brackets if the function can return more than one result. If you want the second result (and any later ones), you need to use the brackets and name the variables you want to assign the result to, like this:
[y, idx] = min([3 2 1 5 6])
카테고리
도움말 센터 및 File Exchange에서 Logical에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!