フィルターのクリア

How to check if a variable exists and if yes display the variable.

666 ビュー (過去 30 日間)
Mouse
Mouse 2021 年 11 月 2 日
コメント済み: Stephen23 2021 年 11 月 2 日
clear all;
%disp(testresults); %can't work because variable testresults does not
%exist.
testresults = magic(5) %create variable
exist testresults; %returns "1", variable exists
if (exist testresults var) %why can't I check if this exists?
%File: temp.m Line: 6 Column: 11
%Invalid expression. Check for missing multiplication operator, missing or unbalanced delimiters, or other syntax error. To construct matrices, use brackets instead of parentheses.
disp(testresults);
end
why is that not possible? What should I do to fix this problem?
The variable is eventually created bevore.

回答 (2 件)

Stephen23
Stephen23 2021 年 11 月 2 日
編集済み: Stephen23 2021 年 11 月 2 日
"Why can't I check if this exists?"
Of course you can, you just need to use function syntax and not command syntax:
if exist('testresults','var')
Command sytnax is a historical oddity that exists only to confuse beginners who think that certain functions must be called using command syntax, because that is what they see in the MATLAB help. In reality it can be replaced in every situation with function syntax.
"What should I do to fix this problem?"
Avoid command syntax.
  2 件のコメント
Steven Lord
Steven Lord 2021 年 11 月 2 日
There are situations where command form is more natural IMO.
help plot % vs help('plot')
doc fft % doc('fft')
hold on % hold('on')
quit force % quit('force')
clear all % clear('all')
close all % close('all')
Stephen23
Stephen23 2021 年 11 月 2 日
@Steven Lord: yes to HELP, QUIT, and DOC when called from the command window.
No to HOLD: without explicit object handles such a GUI is too fragile for my taste.

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


Image Analyst
Image Analyst 2021 年 11 月 2 日
Try this
try
testresults % Spew results to command window.
catch ME
message = sprintf('Note: testresults is not a variable in scope.');
uiwait(warndlg(message))
end

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

タグ

製品


リリース

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by