Initialize Variables in a Function

225 views (last 30 days)
Amanda
Amanda on 30 May 2013
In a SCRIPT, I'm able to initialize variables which is displayed as empty variables in the workspace:
mass = [];
speed = [];
velocity = [];
BUT when I place these same initialize variables in a FUNCTION, MATLAB does not recognize them and does not store them in the workspace.
function myvariables()
mass = [];
speed = [];
velocity = [];
How can I execute initialize variables in a function?
Thanks, Amanda

Accepted Answer

Iain
Iain on 30 May 2013
If you want a function to return those variables to the workspace, you'll need to declare it as:
function [mass speed velocity] = myvariables()
and call it as
[mass speed velocity] = myvariables()
Alternatively, you can assign those variables in either the calling, or base workspace (look up the help for assignin or evalin)
Alternatively, again, you can declare the variables as global in every function you want to use them, AND in the base workspace.
  1 Comment
Iain
Iain on 30 May 2013
Variables declared within functions, and not explicitly returned in some fashion will be deleted when the function finishes, but are available within the function.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!