struct 结构数组

来源:互联网 发布:错生网络剧百度云资源 编辑:程序博客网 时间:2024/05/17 06:23

Struct

结构数组和数值数组一样,是Matlab支持的一种数据类型。有两种定义方式,直接引用方式和struct函数

(一)直接引用定义方式

Matlab中变量不需要事先申明,对struct也是如此。结构数组可以直接引用,并还可以动态扩充。Struct包含字段和字段中的元素,比如

>>x(1).real=0;x(2).real=1;x

x=

1x2struct array with fields:

real

定义了一个1*2的结构数组,其中real就是字段,每个real字段里包含了两个元素0和1,可以动态扩充字段中的元素

>>x(3).real=2;x

x=

1x3struct array with fields:

real

也可以动态扩充字段

>>x(1).scale=4;

>>x

x=

1x3struct array with fields:

    real

scale

查看第一个元素的各字段内容

>>x(1)

ans=

     real: 0

scale: 4

不同字段之间的数据类型不需要相同,不同元素的同一字段的数据类型也不要求相同,甚至结构数组自身都可以作为字段的内容。

(二)struct函数

Struct的使用方法

s= struct(‘field1’,values1,‘field2’,values,…);

其中fieldi就是第i个字段,每个字段的元素放入valuesi中。如

>>s = struct('type',{'big','little'},'color',{'blue','red'},'x',{3,4})

s=

1x2struct array with fields:

    type

    color

    x

再议结构数组的维数

valuesx为元胞数组的时候,生成的结构数组的维数与元胞数组的维数相同。而在数据中不包含元胞的时候,得到的结构数组的维数是1×1

0 0
原创粉丝点击