00:00
好,这一小节我们学习一下rust的整形,好,我们先到编辑器里看一下例子,我们这里新建目录零五_int我们新建一个文件may点2FN may括号大括号light price等于100括号,Light price2冒号U32等于200分号,Light price3冒号I32等于FOOD300 light price4冒号I size等于400 light price5冒号u size等于500分号。那下面呢,我们就进行打印一下print l price is大括号逗号price end price3is大括号啊,PRICE2逗号PRICE3这个地方,PRICE2这个地方。
01:00
S4N price5is,大括号PRICE4,逗号PRICE5,这个后面都有分号啊,我们退出这个目录,然后进到05RUC me.RSLS一样,这个时候我们有了这个me的二进制,那我们看打印出来和我们赋值是一样的,那我们看一下PRICE2和PRICE3,对于ru来说呢,它是分为有符号整形和无符号整形,那对于有符号整形呢,也就是说可以存储正数,也可以存储负数,那对于无符号整形呢,它只能存储为正数。注释一下,有符号类型是无符号类型on side,负数可以存储正数或负数,无符号只能。
02:00
存储正数,那我们说ru呢,还可以按存储空间来说划分,一个字节,二字节,字字节,八字节,16字节,那我们说一个字节呢,等于八位,每一位呢,只能存储二进制零或者一,因此每一个字节能够存储的最大数值是256,而最小的数字则是负127。还有我们可以看一个当类型和值不匹配的时候,Rust会报错light right6冒号I32等于66.66,我们编译一下ru c may.is看他报的是Mr match,就是说没有匹配到类型,那你明明给的要的是I32的类型。
03:00
但你给的值却是一个浮点类型,所以呢,它这个就编译不成功,下面呢,我们再看一个数据溢出的这个案例,Light price7冒号I8等于192,那我们这次再编译一下,我们可以看到这个arrow,他说out of range for I8,也就是说你给的这个192的这个值啊,已经超出了这个I8的范围,下面也写了overflowing,也就是说溢出的意思,下面他也给了具体的note,说192不适合这个I8类型,并且给出了这个范围是负的128到正的127。好,这些就是我们整形内容里在编辑器里的内容演示,我们回到博客中,好,我们点击进入这个整形,那么整形的这个最大值和最小值,我们可以通过标准库的这个max和mini进行打印。
04:00
输出,那这里我已经打印输出出来了,大家看一下就可以了,下面呢,也就是说有符号类型和无符号类型,那我们说有符号呢,就是可以存储正数,也可以存储负数,那无符号类型呢,就只能存储正数,下面就是有符号类型和无符号类型,下面就是I8 i16 i32 i64 i128这些类型,并且对应着的无符号类型和它占用空间的大小。下面呢,我们也说一个字节是八位,每一位呢只能存储零或者一,因此每一个字节能够存储最大的数字,也就是256,而最小的数字呢,也就是负的127,那整形的长度可以是二,那这个二呢,是由CPU架构决定的大小的整形类型,那大小为二的整数在叉八六机器上呢,就是32位在叉64上呢,就是64位,那S2呢是RO默。
05:00
阵的整形,下面我们也进行了案例的演示,还有类型和值不匹配的这个演示,包括它的报错,我们大家要知道,那我们说整形的取值范围呢,有符号的是这些,无符号的是这些,那么这个N呢,是指数据类型的大小,我们可以跟着这个公式进行运算,最后呢,我们看了这个整形的溢出,也就是说我们给定一个值,它超出了对应类型的取值大小,那么rut是如何提示的?我们看ru的提示是比较人性的,并且告诉你应该的取值范围是多少,也非常明确的告诉你它超出了I8的赋值范围。好课程的讲义呢,已经放在博客上了,欢迎大家访问学习ru和go语言的相关内容。如果大家想要系统学习go让技术站呢?我们也有从零到go物语言微服务架构师的训练营,欢迎大家添加博客下方的微信。
06:00
进行咨询和关注公众号,获取更多的资源,我会在训练营中等你,好,这一小节就到这里,拜拜。
我来说两句