Matlab
数据类型
matlab的数据类型与C语言很相似,在cmd windows上输入命令whos可以查看当前变量的基本参数,如变量名,size,bytes,class这些基本参数。相关的其实在workspace的窗口上也可以看到变量名以及相关的值等等。
整数
整数的区分与C语言差别不大,同样是分为:
- 有符号整形
- 无符号整形
长度也类似,有:
- int8
- int16
- int32
- int64
- uint8
- uint16
- uint32
- uint64
同样的,不管有符号还是无符号,占用的字节也分别是
- 1个字节
- 2个字节
- 4个字节
- 8个字节
实际上也可以通过简单的代码观察一下
clear all; %清除
a = 24;
b1 = int8(a)
b2 = int16(a)
b3 = int32(a)
b4 = int64(a)
c = 'hello world'
int8(c)
取整的操作,是会经常用到的,常用的取整函数:
- round 向最接近的数取整
- fix 向0取整
- floor 向不大于该数的最近的数取整
- ceil 向不小于该数的最近的数取整
代码实例:
clear all;
a1 = round(2.5)
a2 = round(-2.5)
b1 = fix(-3.6)
b2 = fix(-3.5)
c1 = floor(4.9)
c2 = floor(-4.2)
d1 = ceil(4.2)
d2 = ceil(-4.4)
浮点
matlab中,浮点的默认是双精度浮点
关于浮点的代码测试
clear all;
a = 55.66
b = single(a)
c1 = double(a)
c2 = int16(a)
c3 = int32(a)
d1 = [realmin('single') realmax('single')]
d2 = [realmax('double') realmax('double')]
复数
按照我们学的知识来说,复数是分为实部和虚部的,在matlab中,建立一个复数,可以直接赋值建立,虚部使用i或j来表示,常用的函数如下:
- complex(a,b)—创建复数,a为实部,b为虚部
- real(z)—得到复数的实部
- imag(z)—得到复数的虚部
- abs(z)—得到复数的模
- angle(z)—得到复数的角度
- conj(z)—得到复数的共轭复数
相关代码:
clear all;
z1 = 3+4i
a1 = real(z1)
a2 = imag(z1)
b1 = abs(z1)
b2 = angle(z1)
c1 = conj(z1)
z2 = complex(1:3,2:4)
real(z2)
imag(z2)
数据显示格式
在matlab中,使用format()确定数值类型的显示格式。改变数值类型的显示格式之后,会一直有效,直到下一次调用format()来修改。具体的可以通过在cmd windows上输入help format()来查看具体的使用方法。
逻辑类型
在逻辑运算中,实际只有0和1,其实就是假和真,在数字上,可以说,只要是非0的数,其实就是1,logical()这个函数,就可以将数值型转换成逻辑型,也就是非0即1。
字符和字符串
字符和字符串在matlab上,都用‘ ’来括起来
clear all;
a = '许佬 is very 牛逼'
b = char([65 66 67 68])
c = int8('彭佬牛逼')
d = '虫'
你会发现,matlab对中文的支持真舒服!
和字符串在matlab上,都用‘ ’来括起来
clear all;
a = '许佬 is very 牛逼'
b = char([65 66 67 68])
c = int8('彭佬牛逼')
d = '虫'
你会发现,matlab对中文的支持真舒服!