双十一,什么打折力度最大?是电器?是日用品?是零食?
不!是书籍!
一年三次,双十一、双十二、年中大促,书都很便宜,基本上都是五折,还有满减。
所以我也没有放过这个机会,又买了很多书回来装饰自己的宿舍。
其中有几本机器人控制和图像处理相关的书(《机器人学、机器视觉与控制》、《机器人控制系统的设计与MATLAB仿真:基本设计方法》、《机器人控制系统的设计与MATLAB仿真:先进设计方法》、《先进PID控制MATLAB仿真》、《机器人仿真与编程技术》),都是使用的Matlab作为工具进行开发的。我也不得不拾起几年前学的Matlab,进行一下总结。
今天简单的看了一下Matlab的数据类型,Matlab底层是通过C语言实现的,所以数据类型和C有很多类似的地方。如有符号整型、无符号整型、单精度浮点型、双精度浮点型、字符串类型、结构体类型,都是C中所具有的类型,布尔型也在新的C语言标准中加入了,除此之外还有函数句柄类型,由于之前所学的只是一点皮毛,所以并不知道这是啥,赶紧谷歌一下:函数句柄是一种存储函数关联项的数据类型。例如,您可以使用函数句柄构造匿名函数或指定回调函数。此外,也可以使用函数句柄将一个函数传递给另一个函数,或者从主函数外部调用局部函数。 这是MathWorks官网给出的解释,看到了熟悉的匿名函数和回调函数。
说了这么多废话,下面正式总结,Matlab中有如下数据类型:
1. 有符号整型
a = int8(2) %%int代表整型,8代表位数,即8位整型,相应的还有int16, int32
2. 无符号整型
b = uint32(20) %%用过C语言进行过单片机开发的朋友应该都很熟悉这种类型别名,u代表unsigned,即无符号的意思
3. 单精度浮点型
c = single(1.6) %%这个有点不同于其他语言,其他语言一般用float表示单精度浮点型,而matlab直白地使用single(单)表示单精度浮点型
4. 双精度浮点型
d = double(1.6) %%这个与其他语言相同,可能Matlab是想刚好一个single一个double好记,23333。另外,matlab中默认的数据类型是double,就是说,如果没有明确写出,数据类型就是double
5. 布尔型
e = true
f = false %%布尔类型只有两种取值,true和false,类似于java中,实际,true是以1存储的,false是以0存储的
6. 字符串类型
g = 'staick' %%和很多语言一样,matlab也有字符串,使用单引号引起来,不同于很多语言使用双引号
7. 结构体类型
h = struct('name',{'staick'})
h.name = 'staick' %%结构体类型,懂得都懂,C语言中应用的很多,C中很多数据结构的构建都需要用到结构体
8. 函数句柄类型
i = @cos %%试了一下,其中一个功能就是给函数起别名,即将cos函数起一个i的别名
暂时先总结这么多,等待后续的学习。Fighting!