Rust 基础语法

本文档将深入介绍 Rust 编程语言的基础语法。为了便于阅读,我们将使用中文来进行讲解。请注意,由于这是一篇详细的教程,因此它假设您对编程和计算机概念有基本的了解。

目录

  1. 简介
  2. 安装 Rust
  3. Hello, World!
  4. 变量和常量
  5. 数据类型
  6. 函数
  7. 控制流
  8. 所有权和借用
  9. 错误处理
  10. 模块化编程

简介

Rust 是一种现代的、安全且高性能的编程语言,由 Mozilla 开发。它结合了 C/C++ 的速度和安全性,同时提供了更高级语言的易用性。本教程将帮助您学习 Rust 的基础语法和特性。

安装 Rust

要开始使用 Rust,您需要在计算机上安装它。请按照以下步骤进行操作:

  1. 访问 Rust 官方网站
  2. 点击 "Install" 按钮,选择您的操作系统,并按照说明进行安装。
  3. 在终端或命令提示符中输入 rustc --version 来验证是否成功安装 Rust。

Hello, World!

现在您已经安装了 Rust,让我们从编写一个简单的 "Hello, World!" 程序开始。创建一个新文件 main.rs 并输入以下代码:

fn main() {
    println!("Hello, World!");
}

要运行该程序,请在终端中导航到保存 main.rs 的目录并键入以下命令:

$ rustc main.rs
$ ./main
Hello, World!

祝贺您!您已经成功编写、编译和运行了第一个 Rust 程序。

变量和常量

在 Rust 中,可以使用 let 关键字声明变量。默认情况下,Rust 中的变量是不可变的,但您可以使用 mut 关键字来创建可变变量。例如:

fn main() {
    let x = 5; // 不可变变量
    let mut y = 10; // 可变变量
}

常量在声明时必须指定类型,并且它们总是不可变的。常量通常使用全大写字母和下划线来命名,例如 const MAX_VALUE: i32 = 100;

数据类型

Rust 支持各种数据类型,包括整数、浮点数、布尔值和字符串等。以下是一些常见的数据类型:

  • 整数 (i8, i16, i32, i64, u8, u16, u32, u64)
  • 浮点数 (f32, f64)
  • 布尔值 (bool)
  • 字符 (char)
  • 元组 (tuple)
  • 数组 (array)
  • 切片 (slice)
  • 结构体 (struct)
  • 枚举 (enum)

函数

Rust 中的函数使用 fn 关键字声明。函数参数需要指定类型,并且函数可以返回值。例如:

fn add(x: i32, y: i32) -> i32 {
    x + y
}

Rust 中的函数支持表达式和语句。在上面的示例中,x + y 是一个表达式,因为它计算并返回一个值。如果您想要在函数内部执行多个操作而不返回任何值,可以使用语句。

控制流

Rust 提供了几种控制流结构,包括 ifmatchloopwhilefor 循环等。这些结构允许您根据条件执行不同的代码路径,重复运行特定的代码块等。

所有权和借用

Rust 中的所有权系统是该语言安全性和高性能的关键组成部分。它确保在编译时没有数据竞争或空指针问题,同时还避免了垃圾收集的开销。借用规则允许您在不转移所有权的情况下使用值。

错误处理

Rust 中的错误处理遵循 "失败是正常的" (Failures are normal) 原则。它提供了两种主要类型的错误:可恢复和不可恢复。可恢复错误使用 Result<T, E> 类型来处理,而不可恢复错误使用 panic! 宏触发 panic 并终止程序执行。

模块化编程

Rust 支持通过模块进行代码组织和重用。模块允许您将相关的代码分组到一起,并控制其可见性。Rust 使用文件系统作为默认的模块系统,但也提供了自定义模块系统的选项。

本教程涵盖了 Rust 编程语言的基础语法和特性的大部分内容。希望您能够通过练习和实践来进一步熟悉这门语言,并开始构建自己的项目。如果您有任何问题或需要更详细的解释,请随时提出!