how can I take a global variable declared in a program, take it in a function, change its value inside the fuction and give it again to the program as global?

2 visualizzazioni (ultimi 30 giorni)
Hi! I have the following Problem: I have a variable declared in my program, whose value I want to Change in a function and then return it to the program as global, so that when I call the function again the value stored in there is the one I calculated the last time within the function. If anyone could help me, please...

Risposta accettata

Adam
Adam il 5 Mar 2015
You don't need to pass global variables anywhere.
You just keep putting
global myVariable
within any scope in which you wish to use it.
That said, it is terrible programming technique to use global variables. Just do something like:
value = doSomething( value );
in your main program with a normal (non-global) variable passed into a function and then passed out again after being updated. There are other techniques too, but that is probably the simplest.
  3 Commenti
Adam
Adam il 6 Mar 2015
I don't think that changes anything I said though. The whole purpose of functions is that they take input arguments and can send back output arguments. You can pass out the same thing you pass in and then pass it in again next time you call the function if that is what you wish to do.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Scope Variables and Generate Names in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by