单元型变量
单元型变量是以单元为变量的数组,每个元素为单元,每个单元可以包含其他类型的数组,如实数矩阵,字符串,复数向量等。单元型变量通常由{}创建,数据通过数组下标来引用。
单元型变量的创建
1.赋值语句直接定义
>> A=[1,2;3,4];
>> B=3+i;
>> C='abc';
>> D=3;
>> E={A,B,C,D}
E =
1×4 cell 数组
{2×2 double} {[3.0000 + 1.0000i]} {'abc'} {[3]}
2.对单元的元素逐个赋值
该方法时预先分配单元型变量的存储空间,然后逐个赋值。一般用cell函数来赋值。
cell(N):生成一个n*n阶的置空单元数组
cell(M,N):生成一个m*n阶的置空单元数组
cell(siza(A)):生成一个与A同形式的单元数组
>> E=cell(2,2);
>> E{1,1}=[1,2,3];
>> E{1,2}='abc';
>> E{2,1}=3+4i;
>> E{2,2}=10;
>> E
E =
2×2 cell 数组
{1×3 double } {'abc'}
{[3.0000 + 4.0000i]} {[ 10]}
单元型变量的引用
有E{m,n}引用即可
>> E{1,2}
ans =
'abc'
>> E{2,1}
ans =
3.0000 + 4.0000i
结构型变量
结构型变量是根据属性名(field)组织起来的不同数据类型的集合。结构的任何一个属性可以包含不同的数据类型,如字符串、矩阵等。结构型变量用函数struct来创建,调用格式如下表:
调用格式
说明
s=struct('field',{},'field2',{},...)
建立一个空的结构数组,不含数据
s=struct('field',value1,'field2',value2,...)
建立一个具有属性名和数据的结构数组
>> mn=struct('color',{'red', 'black'},'number',{1,2})
mn =
包含以下字段的 1×2 struct 数组:
color
number
>> mn(1)
ans =
包含以下字段的 struct:
color: 'red'
number: 1
>> mn(2)
ans =
包含以下字段的 struct:
color: 'black'
number: 2
>> mn(2).number
ans =
2
结构变量相关函数:
函数名
说明
struct
创建结构型变量
fieldnames
得到结构型变量的属性名
getfield
得到结构型变量的属性值
setfield
设定结构型变量的属性值
rmfield
删除结构型变量的属性
isfield
判断是否为结构型变量的属性
isstruct
判断是否为结构型变量