フィルターのクリア

How can I clear all the variables except one before restarting my program?

2 ビュー (過去 30 日間)
Shayne Albertson
Shayne Albertson 2015 年 11 月 29 日
コメント済み: Image Analyst 2015 年 11 月 30 日
Is there a way to clear all of the variables except one when I end a game I wrote so that the next time it starts the variables have to be re-entered?
I have a program where it runs while program == 1, so when I ask the user if they want to play again, if they don't answer yes, then program = 0 and the program ends, so if I could clear all the variables except program, that would be super convenient.
  3 件のコメント
Stephen23
Stephen23 2015 年 11 月 30 日
Better solution: write functions instead of scripts.
Image Analyst
Image Analyst 2015 年 11 月 30 日
Or save what you want to a .mat file. Then you can recall variables from the .mat file at each run. This method will even recall variables across different sessions of MATLAB, unlike methods using clear().

サインインしてコメントする。

採用された回答

Image Analyst
Image Analyst 2015 年 11 月 29 日
Here's a snippet to study:
a = 10 % Declare sample variables.
b = 33;
result = 20;
% Get the names of the variables.
vars = whos
varNames = {vars.name};
celldisp(varNames);
% Let's loop over names, keeping the variable called "result"
for k = length(varNames): -1 : 1
fprintf('Checking %s\n', varNames{k});
if strcmp(varNames{k}, 'result')
continue;
end
fprintf(' Deleting %s\n', varNames{k});
clear(varNames{k});
end
clear ('k', 'varNames', 'vars'); % Get rid of loop iterator and other temporary items.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeEnvironment and Settings についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by