MATLAB数据类型及转换

article/2025/9/13 0:40:06

MATLAB数据类型及转换

MATLAB的主要数据类型有:整型,浮点型,逻辑,字符,日期和时间,结构数组,细胞数组及函数句柄等,其中函数句柄是MATLAB所特有的一种数据类型。

一:整数型与浮点型

MATLAB提供了几种常用整数型数据和浮点型数据的定义函数,如表所示:

数据类型函数类别存储空间
整数型int8()有符号8位整型1byte
uint8()无符号8位整型1byte
int16()有符号16位整型2bytes
uint16()无符号16位整型2bytes
int32()有符号32位整型4bytes
uint32()无符号32位整型4bytes
浮点型single()单精度4bytes
double()双精度8bytes
1.1 数据类型范围查询:

对于整型MATLAB提供了两个函数分别查看不同类别整型数据的最值:intmax(‘class’)与intmin(‘class’),而对于浮点型MATLAB也提供了两个函数realmax(‘class’)和realmin(‘class’)查看单/双精度的最值。
查看int8最大的取值
查看single最小的取值
如上所示,查看到int8所能取的最大值为127,single所能取的最小值为1.1755e-38。

1.2 浮点型取整:

MATLAB针对不同的取整规则提供了不同的函数,具体如表所示:

函数取整规则
fix()朝零方向取整
floor()朝负无穷方向取整
ceil()朝正无穷方向取整
round()四舍五入到最近的整数

二:逻辑与字符

函数:logical()
逻辑值取0或者1,分别代表false和true。而用函数false()生成逻辑0的矩阵,函数true()生成逻辑1的矩阵。
函数:char()
Matlab中的输入字符需使用单引号。字符串存储为字符数组,每个元素占用一个ASCII字符。
生成字符数组并自动补空格
char函数会自动补空格,需用时用deblack()函数移除空格,即deblank(name(1,:))。

三:结构类型

结构是包含一组记录的数据类型,而记录则是存储在相应的字段中。结构的字段可以是任意一种MATLAB数据类型的变量或者对象。结构类型的变量也可以是一维的、二维的或多维的数组。结构数组也称为架构数组。不过,在访问结构类型数据的元素时,需要使用下标配合字段的形式。结构数组有两种创建方法,直接定义法和函数创建法。

3.1直接定义法

直接定义结构数组
stu是一种结构,可以容纳更多的元素,也可以自由地向结构中加入元素。

3.2用struct函数创建结构数组

使用struct函数,可以根据指定的字段及其相应的值创建结构体数组。此函数的一般形式为: str_array=struct(‘field1’,{val1},‘field2’,{val2}…);
函数定义结构数组
在元素较多时,使用struct()函数创建结构数组比直接定义法方便许多。

四:细胞数组

普通数组中的每个元素都必须具有相同的数据类型,而细胞则没有此要求,该结构可以把不同类型的数据纳入到一个变量中。细胞变量的表示方法类似于带有下标的数组,但这些下标不是用圆括号括起来,而是使用大括号。它也有两种创建方法,直接赋值法和利用函数创建。

4.1直接赋值

直接赋值创建细胞数组
赋值时使用大括号,查询时使用小括号表示对应元素的大小及类型,使用大括号表示对应元素的内容,具体例子如下图所示:
在这里插入图片描述

4.2函数创建法

用cell函数预先分配存储空间,然后对细胞的每个元素逐个赋值。
使用函数创建细胞数组

celldisp():输出细胞变量的内容。
cellplot():用图形方式显示细胞变量的内容。
iscell():判别一个变量是否为细胞变量。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五:函数句柄

函数句柄的主要优点就是可以将函数句柄作为调用中的参量传递到另一个函数,它们还可以保存到数据结构或文件中,以备将来使用。
函数句柄有两种不同对类型,这两种类型都是用函数句柄符号@来创建。第一个函数句柄是命名函数句柄,即在运算符@的后面跟一个希望的函数名称。
命名函数句柄
第二个函数句柄是匿名函数句柄,它由代替函数名的MATLAB表达式形成。构建匿名函数句柄的通用格式是:
@(intput_argument-list) expression
匿名函数句柄


http://chatgpt.dhexx.cn/article/cGn3Yfn1.shtml

相关文章

MATLAB-数据类型

默认情况下,MATLAB 存储所有数值变量为双精度浮点值。其他数据类型存储文本,整数或单精度值或单个变量中相关数据的组合。 MATLAB不需要任何类型声明或维度语句。当MATLAB遇到新的变量名称时,它将创建变量并分配适当的内存空间。 如果变量已…

MC20E资料

MC20E资料 U创论坛下载-Quectel_射频LAYOUT_应用指导_V2.2.pdf 文件到原文下载,原文出自:https://bbs.usoftchina.com/thread-202777-1-1.html

移远BC26/BC28(略)/MC20开发之环境搭建 一

1.对于常见的移远OPENCPU开发来说,第一步安装GCC编译器 2.第二步,安装一个集成编译环境,常见的是keil编译环境 3.环境的配置(仅 BC28) 4.最后检查环境是否搭建好 BC28,命令如下: MC20/BC26,命令如下 make clean:清除 m…

3.1 使用STC89C52控制MC20拨打电话

需要准备的硬件 MC20开发板 1个https://item.taobao.com/item.htm?id562661881042GSM/GPRS天线 1根https://item.taobao.com/item.htm?id531979567261IPEX接口转SMA接口转接线 1根https://item.taobao.com/item.htm?id531979903836GPS有源天线 1根https://item.taobao.com/i…

1.6 使用电脑测试MC20的读取带中文短信功能

需要准备的硬件 MC20开发板 1个https://item.taobao.com/item.htm?id562661881042GSM/GPRS天线 1根https://item.taobao.com/item.htm?id531979567261IPEX接口转SMA接口转接线 1根https://item.taobao.com/item.htm?id531979903836GPS有源天线 1根https://item.taobao.com/i…

1.4 使用电脑测试MC20的接收英文短信功能

需要准备的硬件 MC20开发板 1个https://item.taobao.com/item.htm?id562661881042GSM/GPRS天线 1根https://item.taobao.com/item.htm?id531979567261IPEX接口转SMA接口转接线 1根https://item.taobao.com/item.htm?id531979903836GPS有源天线 1根https://item.taobao.com/i…

4.2 使用STM32控制MC20发送短信

需要准备的硬件 MC20开发板 1个https://item.taobao.com/item.htm?id562661881042GSM/GPRS天线 1根https://item.taobao.com/item.htm?id531979567261IPEX接口转SMA接口转接线 1根https://item.taobao.com/item.htm?id531979903836GPS有源天线 1根https://item.taobao.com/i…

4.5 基于STM32+MC20远程短信控制开关

需要准备的硬件 MC20开发板 1个https://item.taobao.com/item.htm?id562661881042GSM/GPRS天线 1根https://item.taobao.com/item.htm?id531979567261IPEX接口转SMA接口转接线 1根https://item.taobao.com/item.htm?id531979903836GPS有源天线 1根https://item.taobao.com/i…

1.8 使用电脑测试MC20的GPRS功能

需要准备的硬件 MC20开发板 1个https://item.taobao.com/item.htm?id562661881042GSM/GPRS天线 1根https://item.taobao.com/item.htm?id531979567261IPEX接口转SMA接口转接线 1根https://item.taobao.com/item.htm?id531979903836GPS有源天线 1根https://item.taobao.com/i…

2.3 使用ARDUINO控制MC20进行GPRS的TCP通讯

需要准备的硬件 MC20开发板 1个https://item.taobao.com/item.htm?id562661881042GSM/GPRS天线 1根https://item.taobao.com/item.htm?id531979567261IPEX接口转SMA接口转接线 1根https://item.taobao.com/item.htm?id531979903836GPS有源天线 1根https://item.taobao.com/i…

1.2 使用电脑测试MC20模块的GPS功能测试

需要准备的硬件 MC20开发板 1个https://item.taobao.com/item.htm?id562661881042GSM/GPRS天线 1根https://item.taobao.com/item.htm?id531979567261IPEX接口转SMA接口转接线 1根https://item.taobao.com/item.htm?id531979903836GPS有源天线 1根https://item.taobao.com/i…

基于STM32的MC20模块GPRS+GPS的C语言驱动程序

MC20 模块是一款集成了高性能GNSS 引擎和四频段GSM/GPRS 引擎的多功能无线模块,本次在项目中使用MC20作为通信网关,开发其与服务器通信的功能以及定位功能,稍微学习了一下。 1.硬件部分 GSM/GPRS 部分主要特性: MC20模块本身集成度较高,如果仅仅是使用的话其实非常简单…

2.6 基于ARDUINO UNO+MC20的路径显示功能

需要准备的硬件 MC20开发板 1个https://item.taobao.com/item.htm?id562661881042GSM/GPRS天线 1根https://item.taobao.com/item.htm?id531979567261IPEX接口转SMA接口转接线 1根https://item.taobao.com/item.htm?id531979903836GPS有源天线 1根https://item.taobao.com/i…

2.2 使用ARDUINO控制MC20发短信

需要准备的硬件 MC20开发板 1个https://item.taobao.com/item.htm?id562661881042GSM/GPRS天线 1根https://item.taobao.com/item.htm?id531979567261IPEX接口转SMA接口转接线 1根https://item.taobao.com/item.htm?id531979903836GPS有源天线 1根https://item.taobao.com/i…

2.4 使用ARDUINO控制MC20进行GPS数据的获取和解析

需要准备的硬件 MC20开发板 1个https://item.taobao.com/item.htm?id562661881042GSM/GPRS天线 1根https://item.taobao.com/item.htm?id531979567261IPEX接口转SMA接口转接线 1根https://item.taobao.com/item.htm?id531979903836GPS有源天线 1根https://item.taobao.com/i…

STM32+MC20实现GPS定位及基站LBS,发送到云平台,可以轨迹回放

使用STM32F103单片机+MC20 无线通信模块,MC20集成GPS、蓝牙、LBS基站定位、GPRS等功能是一款非常强的模块。使用它做一个GPS定位及基站定位,在室内或者隧道等没有GPS信号的情况下,自动切换成基站定位。将数据发送到湖畔物联云平台…

MC20 AT指令无反馈

自己做了一个MC20的小模块板子,今天使用的时候,发现无论我发送什么AT指令,他都没反馈。 确认过了如下这些条件: 1. 波特率115200 2. AT回车换行 3. powerkey一直保持高电平,网络led保持闪烁 然并卵,MC…

4.3 使用STM32控制MC20进行GPRS通讯

需要准备的硬件 MC20开发板 1个https://item.taobao.com/item.htm?id562661881042GSM/GPRS天线 1根https://item.taobao.com/item.htm?id531979567261IPEX接口转SMA接口转接线 1根https://item.taobao.com/item.htm?id531979903836GPS有源天线 1根https://item.taobao.com/i…

stm32+mc20上传gps信息至onenet 可路径显示

开发环境: 芯片: STM32F103C8T6 GSM模块: 移远MC20 开发软件: Keil5 协议 :多协议接入——TCP透传 手机端显示图像 使用STM32F103C8T6 通过串口AT指令控制MC20模块TCP协议,登录OneNet服务器上传GPS数据 。 核心: 串口解析GP…