Rust 变量
最后修改于 2025 年 2 月 19 日
在本文中,我们将展示如何在 Rust 中使用变量。
变量
变量 用于存储值。它是给值的标签。Rust 使用 let 关键字来定义变量。
在 Rust 中,变量默认是不可变的。要创建可变变量,我们使用 mut 关键字。
变量可以持有不同数据类型的值。数据类型是一组值以及对这些值允许的操作。Rust 可以从赋值的右侧推断出数据类型。
简单示例
以下是一个简单的 Rust 变量示例。
main.rs
fn main() {
let name: &str = "John Doe";
let age: i32 = 34;
println!("{name} is {age} years old");
}
该程序定义了两个变量。
let name: &str = "John Doe";
此行定义了一个字符串变量。在冒号之后,我们指定变量的数据类型。
let age: i32 = 34;
我们定义了一个整数变量。
println!("{name} is {age} years old");
这两个变量用于构建一条消息,该消息使用 println! 宏打印到控制台。
$ cargo run -q John Doe is 34 years old
变量类型推断
Rust 可以从赋值的右侧推断出变量的数据类型。
main.rs
fn main() {
let name = "John Doe";
let age = 34;
println!("{name} is {age} years old");
}
在程序中,我们省略了两个变量的数据类型声明。
可变变量
可变变量可以在程序过程中更改。可变变量使用 mut 创建。
main.rs
fn main() {
let mut name = String::from("John Doe");
let mut age = 34;
println!("{name} is {age} years old");
name = String::from("Roger Roe");
age = 54;
println!("{name} is {age} years old");
}
我们定义了两个变量。稍后我们将新值赋给这两个变量。
let mut name = String::from("John Doe");
let mut age = 34;
可变变量前面带有 mut 关键字。
name = String::from("Roger Roe");
age = 54;
我们将新值赋给变量。
λ cargo run -q John Doe is 34 years old Roger Roe is 54 years old
函数参数
传递给函数的变量称为参数或实参。
main.rs
fn main() {
let name = String::from("John Doe");
let age = 34;
let msg = build_msg(name, age);
println!("{msg}");
}
fn build_msg(name: String, age: i32) -> String {
return format!("{} is {} years old", name, age);
}
在程序中,我们定义了一个 build_msg 函数。它接受两个参数。这些参数用于构建一条消息,该消息将从函数返回。
let name = String::from("John Doe");
let age = 34;
let msg = build_msg(name, age);
我们定义了两个变量并将它们作为函数实参传递。
fn build_msg(name: String, age: i32) -> String {
return format!("{} is {} years old", name, age);
}
在函数内部,我们有两个变量。这些在函数块中是有效的。
let msg = build_msg(name, age);
build_msg 函数返回生成的字符串。它被赋给 msg 变量。
在本文中,我们学习了 Rust 中的变量。