Why exist gives an answer even when the variable does not exist?

2 次查看(过去 30 天)
Why does the exist function sometime gives an answer even the variable does not exist, for example, on my computer
clear all;exist('a')
gives 7
clear all;exist('fil')
Also gives 7, why is that?

采纳的回答

Stephen23
Stephen23 2015-8-31
编辑:Stephen23 2015-8-31
When you actually read the documentation for exist, you will find that an output of seven means that exist has located a folder with that names, not a variable as you think it has. So somewhere on your path there are folders with those names. And running clear makes no difference to folders.
If you want to only search for variables, and not all of the other useful things that exist can locate (variables, mex files, simulink models, folders, functions, etc), then you should specify the optional argument like this and specify the output value:
X = 1==exist(name,'var');
really you should do this every time you use exist.
And of course the documentation has lots of other useful information on how to use MATLAB functions properly, so perhaps you should take a look!

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Whos 的更多信息

标签

产品

Community Treasure Hunt

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

Start Hunting!

Translated by