MATLAB的数据类型
结构数组
1.结构数组的应用场景:人事档案。(既有字符串又有数值)
2.结构数组的创建:通过一个例题说明两种赋值方法
(1) 直接赋值
(2)用函数struct来创建
结构数组与单元数组的转换
1.知识点:
结构数组(s)与单元数组©的转换函数为
c=struct2cell(s)
s=cell2struce(c)
假若结构数组s是多维的,则转换后的单元数组的大小为
[p,size(s)] p为结构数组s的字段数
2.例题:
今有树的品种为白桦,树高为28.5m的结构数组信息,将其转换成单元数组。
>> S=struct('category','tree','height',28.5,'name','brich')
S =
category: 'tree'
height: 28.5000
name: 'brich'
>> C=struct2cell(S)
C =
'tree'
[28.5000]
'brich'
>> size(C) %转换后单元数组的大小
ans =
3 1
将结构数组student转换成单元数组C。
>> student(1).ID=101;
>> student(2).ID=102;
>> student(3).ID=103;
>> student(4).ID=104;
>> student(1).name='wang';
>> student(2).name='chang';
>> student(3).name='li';
>> student(4).name='lu';
>> student(1).age=21;
>> student(2).age=20;
>> student(3).age=19;
>> student(4).age=23;
>> student
student =
1x4 struct array with fields:
ID
name
age
>> C=struct2cell(student);
>> C=[C(:,1),C(:,2),C(:,3),C(:,4)] %显示单元数组
C =
[ 101] [ 102] [103] [104]
'wang' 'chang' 'li' 'lu'
[ 21] [ 20] [ 19] [ 23]