Rust 从入门到摔门而出门 (一) 变量声明

###   Rust 从入门到摔门而出门 (一) 变量声明

####   变量声明

1
2
3
4
5
6
7
8
9
10
11
12
fn main() {
// 声明变量 x = 5
let x = 5;
// 修改变量x,此处会报错,变量默认是不可改变的。
// x = 6;
println!("The value of x is: {x}");
 
// 声明可变变量, 在变量名前添加 mut 来使它变成可变变量。
let mut y = 10;
y = 11;
println!("The value of y is: {y}");
}

  

 

#### 常量

声明常量,值不可被改变。使用 const 关键字声明,不允许使用 mut,必须注明数据值类型

 

fn main() {
// 声明 THREE_HOURS_IN_SECONDS 设置值限制 32比特位的 整数类型
const THREE_HOURS_IN_SECONDS: u32 = 60 * 60 * 3
println!("The value of THREE_HOURS_IN_SECONDS is: {THREE_HOURS_IN_SECONDS}");
}

 

####  隐藏

在rust 中可以变量名相同,后面的变量名会覆盖前面的变量名.

 

1
2
3
4
5
6
7
8
9
10
fn main() {
let x = 10;
println!("1.输出 x:{x}"); // 10
let x = x + 1;
{
let x = x * 2;
println!("2.输出 x:{x}"); // 22
}
println!("3.输出 x:{x}"); // 11
}

 

let 重新赋值 和 使用 mut 有所不同。第一个y是字符串类型,但是 y.len() 是数字类型,所以会报错提示不能修改变量的数据类型。

1
2
3
4
5
6
7
8
9
10
fn main() {
 
let x = "123";
println!("4.输出 x:{x}"); //123
let x = x.len();
println!("5.输出 x:{x}"); // 3
 
let mut y = "123456";
y= y.len(); //error[E0308]: mismatched types expected `&str`, found `usize`
}

  

let 声明的作用域,

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
fn main() {
let mut x = 10;
println!("1.输出 x:{x}"); // 10
{
x = 2;
println!("2.输出 x:{x}"); // 2
}
{
let x = 10;
println!("3.输出 x:{x}"); // 10
}
 
let x = x + 100;
println!("4.输出 x:{x}"); // 102
 
}

  

 

posted @   Ferdinand_包子君  阅读(20)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示