设为首页收藏本站

EPS数据狗论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1599|回复: 0

Matlab数据类型

[复制链接]

16

主题

90

金钱

153

积分

入门用户

发表于 2019-4-9 16:00:19 | 显示全部楼层 |阅读模式

MATLAB不需要任何类型声明或维度语句。当MATLAB遇到新的变量名称时,它将创建变量并分配适当的内存空间。
如果变量已经存在,则MATLAB将使用新内容替换原始内容,并在必要时分配新的存储空间。
  1. total = 136;
复制代码

上述语句创建一个名为total的1x1矩阵,并将值136存储在其中。
MATLAB数据类型
MATLAB提供15种基本数据类型。每种数据类型存储矩阵或数组形式的数据。矩阵或数组的最小值是0到0,并且是可以到任何大小的矩阵或数组。
下表显示了MATLAB中最常用的数据类型
数据类型 描述
int8 8位有符号整数
uint8 8位无符号整数
int16 16位有符号整数
uint16 16位无符号整数
int32 32位有符号整数
uint32 32位无符号整数
int64 64位有符号整数
uint64 64位无符号整数
single 单精度数值数据
double 双精度数值数据
logical 逻辑值为1或0,分别代表true和false
char 字符数据(字符串作为字符向量存储)
单元格阵列 索引单元阵列,每个都能够存储不同维数和数据类型的数组
结构体 C型结构,每个结构具有能够存储不同维数和数据类型的数组的命名字段
函数处理 指向一个函数的指针
用户类 用户定义的类构造的对象
Java类 从Java类构造的对象


示例
使用以下代码创建脚本文件(datatype1.m)
  1. str = 'Hello World!'
  2. n = 2345
  3. d = double(n)
  4. un = uint32(789.50)
  5. rn = 5678.92347
  6. c = int32(rn)

复制代码


当上述代码被编译和执行时,它产生以下结果
  1. Trial>> datatype1

  2. str =

  3.     'Hello World!'


  4. n =

  5.         2345


  6. d =

  7.         2345


  8. un =

  9.   uint32

  10.    790


  11. rn =

  12.    5.6789e+03


  13. c =

  14.   int32

  15.    5679
复制代码


数据类型转换
MATLAB提供了各种用于将一种数据类型转换为另一种数据类型的函数。 下表显示了数据类型转换函数
函数描述说明
char转换为字符数组(字符串)
int2str将整数数据转换为字符串
mat2str将矩阵转换为字符串
num2str将数字转换为字符串
str2double将字符串转换为双精度值
str2num将字符串转换为数字
native2unicode将数字字节转换为Unicode字符
unicode2native将Unicode字符转换为数字字节
base2dec将基数N字符串转换为十进制数
bin2dec将二进制数字串转换为十进制数
dec2base将十进制转换为字符串中的N数字
dec2bin将十进制转换为字符串中的二进制数
dec2hex将十进制转换为十六进制数字
hex2dec将十六进制数字字符串转换为十进制数
hex2num将十六进制数字字符串转换为双精度数字
num2hex将单数转换为IEEE十六进制字符串
cell2mat将单元格数组转换为数组
cell2struct将单元格数组转换为结构数组
cellstr从字符数组创建字符串数组
mat2cell将数组转换为具有潜在不同大小的单元格的单元阵列
num2cell将数组转换为具有一致大小的单元格的单元阵列
struct2cell将结构转换为单元格数组


数据类型确定
MATLAB提供了用于识别变量数据类型的各种函数。
下表提供了确定变量数据类型的函数
函数描述说明
is检测状态
isa确定输入是否是指定类的对象
iscell确定输入是单元格数组
iscellstr确定输入是字符串的单元格数组
ischar确定项目是否是字符数组
isfield确定输入是否是结构数组字段
isfloat确定输入是否为浮点数组
ishghandle确定是否用于处理图形对象句柄
isinteger确定输入是否为整数数组
isjava确定输入是否为Java对象
islogical确定输入是否为逻辑数组
isnumeric确定输入是否是数字数组
isobject确定输入是否为MATLAB对象
isreal检查输入是否为实数数组
isscalar确定输入是否为标量
isstr确定输入是否是字符数组
isstruct确定输入是否是结构数组
isvector确定输入是否为向量
class确定对象的类
validateattributes检查数组的有效性
whos在工作区中列出变量,其大小和类型


示例
使用以下代码创建脚本文件
  1. x = 3
  2. isinteger(x)
  3. isfloat(x)
  4. isvector(x)
  5. isscalar(x)
  6. isnumeric(x)

  7. x = 23.54
  8. isinteger(x)
  9. isfloat(x)
  10. isvector(x)
  11. isscalar(x)
  12. isnumeric(x)

  13. x = [1 2 3]
  14. isinteger(x)
  15. isfloat(x)
  16. isvector(x)
  17. isscalar(x)

  18. x = 'Hello'
  19. isinteger(x)
  20. isfloat(x)
  21. isvector(x)
  22. isscalar(x)
  23. isnumeric(x)
复制代码

运行文件后,产生以下结果
  1. x = 3
  2. ans = 0
  3. ans = 1
  4. ans = 1
  5. ans = 1
  6. ans = 1
  7. x = 1177/50
  8. ans = 0
  9. ans = 1
  10. ans = 1
  11. ans = 1
  12. ans = 1
  13. x =

  14.           1          2          3

  15. ans = 0
  16. ans = 1
  17. ans = 1
  18. ans = 0
  19. x = Hello
  20. ans = 0
  21. ans = 0
  22. ans = 1
  23. ans = 0
  24. ans = 0
复制代码
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

客服中心
关闭
在线时间:
周一~周五
8:30-17:30
QQ群:
653541906
联系电话:
010-85786021-8017
在线咨询
客服中心

意见反馈|网站地图|手机版|小黑屋|EPS数据狗论坛 ( 京ICP备09019565号-3 )   

Powered by BFIT! X3.4

© 2008-2028 BFIT Inc.

快速回复 返回顶部 返回列表