Accessing global variable from function
显示 更早的评论
I have the following code:
function [ dirsOut, dirsPerTask ] = prepare( n )
global dirs;
numOfDirs = size(dirs,1);
dirsPerTask = round(numOfDirs/n);
end
dirs is defined as global:
EDU>> whos global
Name Size Bytes Class Attributes
dirs 2198x1 301616 struct global
status 0x0 0 double global
Got an error while calling function prepare:
EDU>> [o, n] = prepare(4)
Error in ==> prepare at 3 global dirs;
Probably I'm missing something ... Please assist.
2 个评论
Vishal Rane
2012-11-29
The error you have posted 'Error in ==> prepare at 3 global dirs;' seems incomplete.
Jan
2012-11-30
@Irene: Please post the complete error message.
回答(2 个)
dpb
2012-11-29
0 个投票
Remove the trailing ';' from the global statement--ML thinks dirs; should be a variable name but the semi-colon isn't valid character in a name
--
1 个评论
Walter Roberson
2012-11-29
I used to think that too, but I was wrong. It turns out that command/function duality ends lines at semi-colons.
dpb
2012-11-29
0 个投票
Hmmm....I did a test first, why did it error? Oh, drat. I mistyped 'global' as 'globals' and didn't notice; just that it errored on the expected line. Mea culpa...
OK, so what is problem w/ the posted function?
类别
在 帮助中心 和 File Exchange 中查找有关 File Operations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!