在MATLAB中有15种基本的数据类型:

8种整型数据类型、单精度浮点型(float)、双精度浮点型(double)、逻辑型(logical)、字符串型(char)、单元数组型(cell)、结构体类型(struct)和函数句柄型(function_handle)。  【MATLAB中,默认的数值类型是 双精度浮点型(double)】

>> a1= int8(-)    %有符号整数

a1 =

  int8

   -
--------------------------------------------------
>> a2=uint16() %无符号整数 a2 = uint16 --------------------------------------------------
>> a3=single(3.5) %单精度浮点数 a3 = single 3.5000
--------------------------------------------------
>> a4= a4 = --------------------------------------------------
>> a5=true %逻辑型 a5 = logical --------------------------------------------------
>> b2{,}= %单元数组 b2 = × cell 数组 []
[]
--------------------------------------------------
>> b3='hello' %字符串类型 b3 = hello
--------------------------------------------------
>> b4.familyname='Zhang' %结构体类型 b4 = 包含以下字段的 struct: familyname: 'Zhang'
--------------------------------------------------
>> c=@cos %函数句柄 c = 包含以下值的 function_handle: @cos >>

在MATLAB编程中,变量不需要定义就可以使用。在程序中,建立了采用不同数据类型的变量,并进行了输出。在MATLAB的命令行窗口中输入whos 后,输出结果为:

1、整数

8种整型数据类型分别为: 有符号整型:int8(1个字节), int16(2个字节), int32(4个字节), int64(8个字节);  无符号整型:uint8, uint16, uint32, uint64。(字节数同前)

2、浮点数

浮点数和其他类型的数据进行运算时,返回的结果取决于运算中的其他数据类型。

3、复数

可以采用赋值语句直接产生复数,也可以采用函数 complex()来产生复数。

4、逻辑类型数据

包括逻辑真(用1表示,函数为true())、逻辑假(用0表示,函数为false())。

5、函数句柄(function_handle)

在MATLAB中,函数句柄类似于C语言的指针,可以通过函数句柄来间接调用函数。函数句柄可以通过符号@后面跟函数名来创建。

比如,程序 fhandle =@sin,创建了函数sin()的函数句柄 fhandle,以后就可以通过函数句柄 fhandle来间接调用函数 sin()。

6、结构体类型

MATLAB的结构体类似于C语言中的结构体数据结构。结构体是按照成员变量名组织起来的不同数据类型数据的集合。

每个成员变量用指针操作符 “.” 表示。例如 A.name 表示结构体变量 A 的 name 成员变量。

>> stu().name='Zhang';   %对成员变量 name 赋值
>> stu().age=; %对成员变量 age 赋值
>> stu().gender='Male'; %对成员变量 gender 赋值
>> stu().name='Li';
>> stu().age=;
>> stu().gender='Male';
>> stu %显示成员变量
-------------------------------------
stu = 包含以下字段的 × struct 数组: name
age
gender
-------------------------------------
>> stu() ans = 包含以下字段的 struct: name: 'Zhang'
age:
gender: 'Male'
-------------------------------------
>> stu() ans = 包含以下字段的 struct: name: 'Li'
age:
gender: 'Male' >>

7、单元数组

单元数组是一种比较特殊的数据类型,每个元素都以单元(cell)的形式存在。在MATLAB中,采用大括号 { }  建立单元数组,也可以采用函数cell()来建立单元数组。在获取单元数组的元素时,下标需要用大括号括起来。

>>  c={'China','Good morning!';[:;:;:],}   %建立单元数组

c =

  × cell 数组

    'China'         'Good morning!'
[× double] [ ]
---------------------------------------------
>> a1=c{,} %获取单元数组中元素的值 a1 = China
---------------------------------------------
>> a2=c{,} %获取单元数组中元素的值 a2 = Good morning!
---------------------------------------------
>> c{,}=[ ] %删除单元数组中元素的值===》》》将单元数组的某些元素设置为空[ ],可以将该元素删除。 c = × cell 数组 'China' []
[× double] []

需要注意:采用成对的大括号({}) 只能获取单个的元素,

MATLAB 的数据类型的更多相关文章

  1. 2.1 MATLAB的数据类型

    2.1 MATLAB的数据类型 每种数据类型都是以矩阵的形式存在的 数据类型:数值型.字符型.元胞型.结构体.函数句柄 数值型包含:双精度类型.单精度类型.整型 支持不同数据的转换 2.1.1 变量与 ...

  2. MATLAB常用数据类型的转换

    一直以来,在使用MATLAB进行运算的过程中,经常会用到对图像的各种处理,因此需要对图像进行数据转换,因此对经常用到的转换进行整理,方便查看. 1.uint8转化为double用来方便图像的运算: d ...

  3. Matlab基本数据类型

    本文转载自:http://hi.baidu.com/xmf6227/blog/item/97ca2ddf98f1b61f495403cb.html Matlab中有15种基本数据类型,主要是整型.浮点 ...

  4. matlab中数据类型

    在MATLAB中有15种基本数据类型,分别是8种整型数据.单精度浮点型.双精度浮点型.逻辑型.字符串型.单元数组.结构体类型和函数句柄.这15种基本数据类型具体如下. 有符号整数型:int8,int1 ...

  5. [转]MATLAB cell数据类型

    细胞型数据类型(cell)使不同类型和不同维数的数组可以共存,细胞型数组实际上可以认为是一种以任意形式的数组为分量的多维数组. 1.细胞型数据的定义 1)直接赋值定义:细胞型变量在定义时需要使用大括号 ...

  6. Matlab编程知识点

    容易忘记的小知识点: Matlab程序首行程序: clear:close all:clc:程序运行开始最好清理下之前残留的各种数据,不然matlab可能会出错. clear(清理变量空间),close ...

  7. 接触Matlab5年一个总结(Matlab要掌握的一些要点 )

    阅读目录 前言 Matlab的开发环境与简单介绍 Matlab的常见命令 Matlab的灵魂-矩阵操作 Matlab的.m或.fig的编程与技巧 从大二开始接触到matlab,讲真,这是一个我觉得很良 ...

  8. 接触Matlab10年后的一个总结,随时使用Matlab要掌握的一些要点

    不记得上一次写超过20行的matlab程序是什么时候了,大概是2013年吧,那个时候写过2篇文章,实际用到了 一些matlab的内容,超过200行的matlab程序应该要追溯到2011年了,最近为了帮 ...

  9. C语言与MATLAB接口 编程与实例 李传军编着

    罗列一下以前自己学习C语言与MATLAB混编的笔记,顺便复习一遍. <C语言与MATLAB接口 编程与实例 李传军编着>(未看完,目前看到P106) 目录P4-8 ************ ...

随机推荐

  1. 只用120行Java代码写一个自己的区块链-4实现真正的p2p网络

    在之前的文章中,我们模拟了节点网络通讯,很多朋友反馈说,他们想看真正的节点网络通讯而不是单节点的模拟.本章将满足你们.

  2. python redis使用方法

    一.mac 下redis安装 1.brew安装redis brew install redis 2.启动redis服务器 brew services start redis 或者 redis-serv ...

  3. Codeforces 1036E. Covered Points

    又一次写起了几何.... 特殊处理在于有可能出现多条线段交于一点的情况,每次考虑时,对每条线段与其他所有线段的交点存在一个set里,对每一个set,每次删除set.size()即可 重点在于判断两条线 ...

  4. Xamarin XAML语言教程构建ControlTemplate控件模板 (三)

    Xamarin XAML语言教程构建ControlTemplate控件模板 (三) (3)打开MainPage.xaml.cs文件,编写代码,实现主题的切换功能.代码如下: using System; ...

  5. 基础认证伪造工具phishery

    基础认证伪造工具phishery   基础认证(Basic Authentication)被广泛应用内部网站.路由器等Web应用中.用户必须填写对应的用户名.密码才能访问Web资源.Kali Linu ...

  6. [LOJ6437]PKUSC

    旋转多边形是没有前途的,我们考虑旋转敌人,那么答案就是所有人的可行区间长度之和除以$2\pi$ 首先对每个敌人找到那些旋转后会落到多边形上的角度,实际上就是圆和一些线段求交,解方程即可,注意判一下落在 ...

  7. 【set】bzoj2761 [JLOI2011]不重复数字

    set去重. #include<cstdio> #include<set> using namespace std; set<int>S; ],b[],en; in ...

  8. 8.5(java学习笔记)8.5 字节码操作(javassist)

    一.javassist javassist让我们操作字节码更加简单,它是一个类库,允许我们修改字节码.它允许java程序动态的创建.修改类. javassist提供了两个层次的API,基于源码级别的和 ...

  9. Mybatis更新用户

    xml配置 <!--更新用户 --> <update id="updateUserById" parameterType="com.itheima.my ...

  10. python内建datetime模块

    datetime 获取当前日期和时间 from datetime import datetime now = datetime.now() print(now) datetime转换为timestam ...