參考:
1.https://ww2.mathworks.cn/help/matlab/ref/exist.html?searchHighlight=exist&s_tid=doc_srchtitle
2.
官方解釋:
exist
說明
exist 以數字形式返回 namename 的類型。此列表描述與每個值關聯的類型:
-
0 -
name不存在或因其他原因找不到。例如,如果name存在於 MATLAB® 不能訪問的受限文件夾中,exist將返回 0。 -
1 -
name是工作區中的變量。 -
2 -
name是擴展名為.m、.mlx、 或.mlapp的文件,name是具有未注冊文件擴展名(.mat、.fig、.txt)的文件的名稱。 -
3 -
name是 MATLAB 搜索路徑上的 MEX 文件。 -
4 -
name是已加載的 Simulink® 模型或者位於 MATLAB 搜索路徑上的 Simulink 模型或庫文件。 -
5 -
name是內置 MATLAB 函數。這不包括類。 -
6 -
name是 MATLAB 搜索路徑上的 P 代碼文件。 -
7 -
name是文件夾。 -
8 -
name是類。(如果使用-nojvm選項啟動 MATLAB,則exist對 Java 類返回 0。)
MATLAB 搜索從搜索路徑的頂層開始並向下移動,直到找到結果或到達路徑上的最后一個文件夾。如果一個文件夾中存在多個 name,根據 函數優先順序,MATLAB 將顯示 name 的第一個實例。文件夾是函數優先級規則的例外。除變量和內置函數外,它們的優先級高於所有類型。
例如,如果 name 與一個擴展名為 .m 的文件和一個 P 代碼文件均匹配,則 exist 返回 6,即將其識別為 P 代碼文件。如果 name 與變量和 P 代碼文件均匹配,則 exist 返回 1,即將其識別為變量。如果 name 與文件夾和 MATLAB 函數均匹配,則 exist 返回 7,即將其識別為文件夾。
exist 返回 name searchTypename 的類型,從而將結果限定為指定的類型 searchType。如果 searchType 類型的 name 不存在,則 MATLAB 返回 0。
示例
輸入參數
替代功能
在 R2006a 之前推出
如果官方解釋還不夠清楚,下面是參考的一篇博文
MATLAB中exist函數的用法
exist:
exist主要有兩種形式,一個參數和兩個參數的,作用都是用於確定某值是否存在:
1. b = exist( a)
若 a 存在,則 b = 1; 否則 b = 0;
2. b = exist( 'name', 'kind')
kind 表示 name 的類型,可以取的值為:builtin(內建類型),class(類),dir(文件夾),file(文件或文件夾),var(變量)。
cell:
cell 是 matlab 中的一種數據類型,用{}來定義, {}內可以放任何類型的數據和矩陣
1. A = {[ 2, 4]} 就表示新建了一個 cell 類型的變量,這個變量包含一個 2 * 1 的矩陣,要引用 cell 類型的話,直接用下標來引用,
如:A{1} 就可以得到[ 2, 4] 這個矩陣了。
2. 在上述的 A 中增加一個元素:(有兩種方法實現)
(1).B(2) = { ‘SecondElement’};
(2).B{2} = ‘SecondElement’;
3.cell 函數:
B = cell(100, 1)
表示 給 B 賦予100 * 1 個cell元素,但未賦值
