Matlab 使用单元数组(cell array)和结构数组 (struct array) 要在MALTAB 中实现比较复杂的编程,就不能不用单元数组(cell array)和结构数组(structarray)
而且在Matlab 中实现struct 比C 中更为方便
单元数组 单元数组中的每一个元素称为单元(cell)
单元可以包含任何类型的matlab 数据, 这些数据类型包括数值数组, 字符, 符号对象, 甚至其他的单元数组和结构体
不同的单元可以包含不同的数据
1 单元数组创建与显示: 1、直接赋值法:按单元索引法 和按内容索引法
(其实也就是将花括号放在等式的右边或是左边的区别)
注意:“按单元索引法”和“按内容索引法”是完全等效的,可以互换使用
通过下面实例,我们看到:花括号{}用于访问单元的值,而括号()用于标识单元(即:不用于访问单元的值)
具体理解{}和()区别可以在下面代码最后分别输入 A{2,2}和A(2,2)
就会发现“按内容索引法{}”能显示完整的单元内容,而“按单元索引法()”有时无法显示完整的单元内容
>> A(1,1)={[1 2 3; 4 5 6;7 8 9]}; % 按单元索引法 >> A(1,2)={2+3i}; >> A(2,1)={'A character'}; >> A(2,2)={12:-2:0}; >> A %要想详细显示A 中的内容,可用指令:celldisp(A) A = [3x3 double] [2
0000 + 3
0000i] 'A character' [1x7 double] >> B{1,1}=[1 2 3;4 5 6;7 8 9]; % 按内容索引法
>> B{1,2}=2+3i; >> B{2,1}='A character'