Rust 基础语法

Rust 基础语法

引言

Rust 是一种系统编程语言,旨在提供内存安全、并发支持和高性能。它由 Mozilla Research 开发,并在 2015 年发布。Rust 的设计目标是让开发者能够编写安全、高效的代码,同时避免了传统编程语言中的许多常见错误。本文将介绍 Rust 的基础语法,帮助读者快速入门。

标识符与关键字

标识符

标识符是用于命名变量、函数、模块、结构体等的名称。在 Rust 中,标识符遵循以下规则:

  • 标识符必须以字母、下划线或反斜杠开头。
  • 标识符的其余部分可以包含字母、数字、下划线或反斜杠。
  • 标识符是大小写敏感的。

关键字

关键字是 Rust 语言中预定义的具有特殊含义的单词。以下是一些常见的关键字:

  • let:声明变量。
  • fn:定义函数。
  • struct:定义结构体。
  • enum:定义枚举。
  • impl:实现一个结构体或枚举的方法。

变量与常量

在 Rust 中,变量和常量的声明方式如下:

rust 复制代码
let x = 5;
const PI: f64 = 3.141592653589793;
  • let 用于声明变量。
  • const 用于声明常量。
  • 变量和常量的类型可以省略,Rust 会根据值自动推导类型。

数据类型

Rust 提供了多种数据类型,包括:

整数类型

rust 复制代码
let a: i32 = 10; // 有符号 32 位整数
let b: u32 = 20; // 无符号 32 位整数

浮点数类型

rust 复制代码
let c: f32 = 3.14; // 32 位浮点数
let d: f64 = 6.28; // 64 位浮点数

布尔类型

rust 复制代码
let e: bool = true;

字符串类型

rust 复制代码
let f = "Hello, world!";
let g: &str = "你好,世界!"; // 字符串字面量

元组

rust 复制代码
let h = (1, "two", 3.0);

数组

rust 复制代码
let i = [1, 2, 3, 4, 5];

切片

rust 复制代码
let j = &i[1..3]; // 切片表示对数组的引用

控制流

Rust 提供了条件语句和循环语句来实现控制流。

条件语句

rust 复制代码
let x = 5;
if x > 3 {
    println!("x 大于 3");
} else {
    println!("x 不大于 3");
}

循环语句

rust 复制代码
let mut counter = 0;
while counter < 10 {
    println!("计数器:{}", counter);
    counter += 1;
}

函数

在 Rust 中,函数使用 fn 关键字声明。

rust 复制代码
fn main() {
    println!("Hello, world!");
}

模块与包

模块用于组织代码,包用于管理项目。

模块

rust 复制代码
mod my_module {
    pub fn my_function() {
        println!("模块中的函数");
    }
}

rust 复制代码
// main.rs
fn main() {
    println!("Hello, world!");
}

总结

本文介绍了 Rust 的基础语法,包括标识符、关键字、变量与常量、数据类型、控制流、函数和模块。通过学习本文,读者可以快速入门 Rust 编程。当然,Rust 语言还有很多高级特性,需要进一步学习和实践。

SEO 优化

  • 标题:Rust 基础语法
  • 关键词:Rust、基础语法、系统编程语言、内存安全、并发支持、高性能
  • 描述:本文介绍了 Rust 的基础语法,包括标识符、关键字、变量与常量、数据类型、控制流、函数和模块,帮助读者快速入门 Rust 编程。

(字数:2027字)

相关推荐
人邮异步社区7 分钟前
怎么把C语言学到精通?
c语言·开发语言
心平气和量大福大41 分钟前
C#-WPF-控件-TextBox 数据绑定
开发语言·c#·wpf
ttwuai1 小时前
Cursor 生成 CRUD 后,Go 后台接口别只测 200:JWT、RBAC 和 tenant_id 怎么验
开发语言·后端·golang
এ慕ོ冬℘゜1 小时前
前端基础:什么是时间戳?JS获取时间戳三种方法与实战用途
开发语言·前端·javascript
执明wa1 小时前
LayoutInflater详解: XML是如何变成View的?
android·xml·开发语言·android studio
一次旅行1 小时前
Python+大模型端到端自动化日报系统
开发语言·python·自动化
噢,我明白了2 小时前
java中Excel的导入和导出(EasyExcel)
java·开发语言·excel
mabing9933 小时前
Qt 生成条纹图
开发语言·qt
蓝悦无人机3 小时前
C++基础 — 函数总结
开发语言·c++
糖果店的幽灵3 小时前
langgraph的 MessagesState 解读
java·开发语言·人工智能·windows·langgraph