MATLAB学习

目录

二、MATLAB数据类型

1、MATLAB中的数值类型

(1) 整数类型

(2) 浮点数类型

(3) 复数

(4) 无穷量(Inf)和非数值量(NaN)

(5) 数值类型的显示格式

2、结构体(Structure)

(1) 结构体的创建

采用赋值语句

采用struct函数

(2) 获取结构体内部数据

(3) 结构体数组操作函数

(4) 结构体嵌套

(5) 结构体函数

3、元胞数组

(1) 元胞数组的创建

直接赋值创建

采用cell函数创建

(2) 元胞数组的显示

(3) 嵌套元胞数组

(4) 元胞数组函数


二、MATLAB数据类型

MATLAB中有15种基本的数据类型,分别是8种有符号/无符号整数类型、单精度浮点类型、双精度浮点类型、逻辑数据类型、字符串类型、元胞数组、结构体、函数句柄。

1、MATLAB中的数值类型

MATLAB中的数值类型包括有符号和无符号整数,单精度和双精度浮点数。在默认情况下,MATLAB按照双精度浮点数类型对所有数值进行存储和操作。

(1) 整数类型

MATLAB中的取整函数

当一个整数类型数值与一个双精度浮点类型数值进行数学运算时,计算结果是这种整数类型,取整采用默认的四舍五入方式。

两种不同的整数类型之间不能进行数学运算,除非提前进行强制转换。

数学运算中,运算结果超出相应的整数类型能够表示的范围时,就会出现溢出错误,运算结果被置为该整数类型能够表示的最大值或最小值。

(2) 浮点数类型

双精度浮点数与逻辑型、字符型进行运算时,返回结果为双精度浮点类型;而与整数型进行运算时返回结果为相应的整数类型,与单精度浮点型运算返回单精度浮点型。

注意:单精度浮点型不能和整数型进行算术运算。

(3) 复数

(4) 无穷量(Inf)和非数值量(NaN)

MATLAB中用Inf和-Inf分别代表正无穷和负无穷,用NaN表示非数值的值。注意:两个NaN彼此是不相等的。

(5) 数值类型的显示格式

默认情况下,MATLAB使用5位定点或浮点型显示格式。

2、结构体(Structure)

一个结构体可以通过字段存储多个不同类型的数据。因此,结构体相当于一个数据容器,把多个相关联的不同类型的数据封装在一个结构体对象当中。一个结构体对象就是一个1*1的结构体数组。

(1) 结构体的创建

创建结构体对象有两种方法:直接采用赋值语句给结构体的字段赋值;通过结构体创建函数struct来创建。

采用赋值语句

“结构体名称.字段名称”

同一个结构体数组中的所有结构体对象具有相同的字段,没有明确赋值的字段,MATLAB默认赋值为空数组。

采用struct函数

struct函数的语法形式:strArray=struct('field1',val1,'field2',val2,...),将第n个字段fieldn赋值为valn

这一语句中valn可以是具有相同尺寸的元胞数组,这样则会创建和元胞数组具有相同尺寸的结构体数组strArray,并将各个结构体元素的字段fieldn赋值为valn元胞数组中对应位置上的取值。

(2) 获取结构体内部数据

对于结构体数组,可以通过括号、下标索引来访问其内部的数据,需要注意的是结构体名和字段之间用点(.)连接。

多个结构体对象的同一字段值可以赋值给元胞数组。

(3) 结构体数组操作函数

size函数:获取结构体数组的尺寸。如果size函数的输入参数是结构体字段,则返回的是该字段的尺寸信息。

增加新字段:只需要添加新的字段赋值语句即可。

删除字段:rmfield函数,其语法格式为newstrArray=rmfield(strArray,'filename'),表示从strArray中删除filename代表的字段。

(4) 结构体嵌套

结构体的字段中也能存储结构体类型的数据,这就是结构体嵌套。

(5) 结构体函数

3、元胞数组

元胞数组是对常规的数值数组的扩展,其每个元素称为一个元胞,每一个元胞中可以存储任意类型、任意尺寸的数据。

(1) 元胞数组的创建

直接赋值创建
采用cell函数创建

arrayName=cell(m,n):创建包含m行n列个元胞的元胞数组。这一语句只用于元胞数组的预声明,之后还需要对每一个元胞内的数据进行初始化赋值。

注意:圆括号括起下标只能定位元胞数组中的每一个单元,而这些单元是元胞类型的;要访问元胞中存储的数据,则要用花括号括起下标来访问。

(2) 元胞数组的显示

MATLAB中默认用紧密格式显示元胞数组,在这种格式下,绝大部分类型的元胞只显示其数据类型和尺寸,而不显示具体的数据内容。

MATLAB提供了celldisp函数,可以用来逐个显示元胞的具体数据内容。

(3) 嵌套元胞数组

元胞数组也可以互相嵌套,就是一个元胞单元中存储了元胞数组类型的数据。

(4) 元胞数组函数

  • 24
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值