MATLAB中isfield函数用法
目录
语法
说明
示例
确定输入名称是否为字段名称
isfield函数的功能是确定输入是否为结构体数组字段。
语法
TF = isfield(S,field)
说明
如果 field 是结构体数组 S 的一个字段的名称,则 TF = isfield(S,field) 返回 1。否则,将返回 0。
如果 field 是包含多个名称的数组且 S 是结构体数组,则 TF 是大小相同的逻辑数组。
如果 S 不是结构体数组,则 isfield 返回 0。
示例
确定输入名称是否为字段名称
创建一个结构体。
S.x = linspace(0,2*pi);
S.y = sin(S.x);
S.title = 'y = sin(x)'
S = struct with fields:
x: [0 0.0635 0.1269 0.1904 0.2539 0.3173 0.3808 0.4443 0.5077 0.5712 0.6347 0.6981 0.7616 0.8251 0.8885 0.9520 1.0155 1.0789 1.1424 1.2059 1.2693 1.3328 1.3963 1.4597 1.5232 1.5867 1.6501 1.7136 1.7771 1.8405 1.9040 1.9675 ... ] (1x100 double)
y: [0 0.0634 0.1266 0.1893 0.2511 0.3120 0.3717 0.4298 0.4862 0.5406 0.5929 0.6428 0.6901 0.7346 0.7761 0.8146 0.8497 0.8815 0.9096 0.9341 0.9549 0.9718 0.9848 0.9938 0.9989 0.9999 0.9969 0.9898 0.9788 0.9638 0.9450 0.9224 ... ] (1x100 double)
title: 'y = sin(x)'
确定 'title' 是否为 S 的字段名称。
TF = isfield(S,'title')
TF = logical
1
可以通过在元胞数组或字符串数组中指定多个名称以在对 isfield 函数的一次调用中测试它们。
field = {'x','y','z','title','error'};
TF = isfield(S,field)
TF = 1x5 logical array
1 1 0 1 0
参数说明
S — 结构体数组
结构体数组。
field — 可能的字段名称
可能的字段名称,指定为字符向量、字符向量元胞数组或字符串数组。
提示
-
如果输入参数 S 是对象,则 isfield 始终返回 0,即使 field 是属性的名称也是如此。
要确定一个名称是否为对象属性的名称,请使用 isprop 函数。