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?

 채택된 답변

Walter Roberson
Walter Roberson 2015년 7월 27일

0 개 추천

You need to specifically say that the variable is in the global namespace in the second file.
global a

추가 답변 (1개)

Image Analyst
Image Analyst 2015년 7월 28일

0 개 추천

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.

카테고리

도움말 센터File Exchange에서 Variables에 대해 자세히 알아보기

질문:

2015년 7월 27일

답변:

2015년 7월 28일

Community Treasure Hunt

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

Start Hunting!

Translated by