Global variables in matlab

1 Ansicht (letzte 30 Tage)
kajalschopra
kajalschopra am 27 Jul. 2015
Beantwortet: Image Analyst am 28 Jul. 2015
I have a file_1.m file which has the following code;
global a;
a=1;
b=2;
file_2();
And my file_2.m has the following
function file_2
c=a+3;
d=2;
end
I had thought that since I have declared "a" as global in file_1.m, file_2 should have access to its value without passing a as an argument.
But it does not. How is it possible for file_2 to have access to the value of 'a' without passing it as an argument?

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 27 Jul. 2015
You need to specifically say that the variable is in the global namespace in the second file.
global a

Weitere Antworten (1)

Image Analyst
Image Analyst am 28 Jul. 2015
See the discussion of globals here in the FAQ. Basically it's more like friend than global , in that only functions that also declare the variable will be able to see it , and functions that don't declare the variable as global will not be able to see it.

Kategorien

Mehr zu Variables 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!

Translated by