[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
11.5 Returning From a Function
The body of a user-defined function can contain a return
statement.
This statement returns control to the rest of the Octave program. It
looks like this:
return |
Unlike the return
statement in C, Octave's return
statement cannot be used to return a value from a function. Instead,
you must assign values to the list of return variables that are part of
the function
statement. The return
statement simply makes
it easier to exit a function from a deeply nested loop or conditional
statement.
Here is an example of a function that checks to see if any elements of a vector are nonzero.
function retval = any_nonzero (v) retval = 0; for i = 1:length (v) if (v (i) != 0) retval = 1; return; endif endfor printf ("no nonzero elements found\n"); endfunction |
Note that this function could not have been written using the
break
statement to exit the loop once a nonzero value is found
without adding extra logic to avoid printing the message if the vector
does contain a nonzero element.
- Keyword: return
When Octave encounters the keyword
return
inside a function or script, it returns control to the caller immediately. At the top level, the return statement is ignored. Areturn
statement is assumed at the end of every function definition.