简短示例
以下是一个简短的 Rust 示例程序
fn main() { // 程序入口 let mut x: i32 = 6; // 可变变量绑定 print!("{x}"); // 与 printf 类似的输出宏 while x != 1 { // 表达式周围没有括号 if x % 2 == 0 { // 与其他语言类似的数值计算 x = x / 2; } else { x = 3 * x + 1; } print!(" -> {x}"); } println!(); }
这段代码实现了 Collatz 猜想:猜想认为该循环总是会结束,但该猜想还没有被证明。可以编辑代码来尝试不同的输入。
关键点:
-
说明所有变量的类型都是静态的。尝试删除
i32
来触发类型推断。尝试使用i8
来触发运行时整数溢出。 -
将
let mut x
改为let x
,讨论出现的编译错误。 -
展示
print!
在参数与格式字符串不匹配时产生的编译错误。 -
展示如何使用
{}
作为占位符,来输出比单个变量更复杂的表达式。 -
向学生展示标准库,展示如何搜索
std::fmt
,其中包含用于格式化字符串的微型语言规则。要点是让学生熟悉在标准库中搜索的过程。- 在 shell 中,运行“rustup doc std::fmt”会在浏览器中打开本地 std::fmt 文档