RUST零基础入门——变量和数据类型

本文介绍了Rust编程语言中声明局部变量、全局变量和常量的关键字,强调了Rust的默认不可变性以及可变性的两种方式(mut和重影)。此外,文章详细讲解了Rust的数据类型,包括整数、浮点数、布尔类型、字符型和复合类型如元组和数组的特点及用法。

1、变量

RUST声明局部变量的关键字是let,声明全局变量的关键字是static,声明常量的关键字是const。值得注意的是,RUST的变量是默认不可变的,什么意思呢?就是通过letstatic声明后的变量在初始化后它的值不可变,比如:

let num = 10;
num = 11 //初始化后再去赋值是错误的,因为num已经和10绑定

运行后提示这样的错误:
错误
这算是RUST的一种特性设计,官方的解释如下:

当我们尝试更改指定为不可变的值时,我们会遇到编译时错误,这一点很重要,因为这种情况可能会导致错误。如果我们的代码的一部分在假设值永远不会改变的情况下运行,而代码的另一部分更改了该值,则代码的第一部分可能不会执行其设计目的。事后很难追查这种错误的原因,尤其是当第二段代码有时只更改值时。Rust 编译器保证当你声明一个值不会改变时,它确实不会改变,所以你不必自己跟踪它。因此,您的代码更容易推理。

这也许就是RUST安全特性的原因之一吧。当然也不是完全不可变,RUST提供了两种可变的方式,一是通过mut关键字来修饰,二是通过重影机制。

/* mut关键字 */
let mut num = 10;
num = 11; //这样再赋值是正确的
/* 重影机制 */
let num = 10;
let num = 11; //相当于重新绑定

/* 二者的不同在于mut只限于可变值,重影的数据类型、可变属性、值均可变 */
let mut str = "___"
str = str.len() //这种写法是错的

虽然RUST具有自动判断变量类型的能力,但是在定义声明全局变量和常量的时候还是需要手动声明变量类型,语法如下:

static num: i32 = 10;
const num
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

# 不想写代码的程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值