グローバル変数を使用する関数があり、その値を別の関数から変更したい。いろいろ試してみましたが、値を使う関数がグローバル変数の新しい値で更新されていないようです。これが私が使用しているコードです。
計算.m
function calculateTest()
global isStop;
global value;
value=0;
while ~isStop
pause(1);
value = value+1
end
end
start.m
function start()
global isStop;
isStop = 0;
calculateTest();
end
stop.m
function stop()
global isStop;
isStop = 1;
end
start()を呼び出すと、値が出力され始めます。しかし、stop()を呼び出しても、停止することはありません。印刷を続けます。私が何を見逃しているのか分かりますか?
(isStop == 0のときにも試しましたが、結果は同じでした。