1小时放弃Rust(1): Hello-World

1. 目的

最近被公司项目的 crash 问题折磨, 一方面是crash位置不固定,难以复现;另一方面是代码、sdk、人员众多,我拿不到所有代码。排查效率非常低效,各种会议满天飞,问题实质毫无进展。希望在达到被辞退的节点前学会 Rust,写一些不可能存在内存踩踏问题的 sdk,拯救自己。

2. 安装 Rust

https://www.rust-lang.org/learn/get-started

bash 复制代码
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

3. 更新 Rust

bash 复制代码
rustup update

4. 创建 Hello-World 工程

bash 复制代码
mkdir -p ~/play/rust
cd $_
cargo new hello-world

5. 编译和运行

bash 复制代码
cd hello-world
cargo build
cargo run

6. 目录结构

刚执行 cargo new hello-world 时,文件和目录结构为:

bash 复制代码
➜  hello-world git:(main) ✗ tree -L 3
.
├── Cargo.lock
├── Cargo.toml
└── src
    └── main.rs

2 directories, 3 files

也可以 cargo clean 来恢复。

7. main.rs

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

解释:

  • fn: Rust 语言中的关键字。function 的意思
  • main(): 入口函数
  • println!: 宏. 暂时不理解,当做函数使用;会自动添加换行符的打印.

8. Cargo.toml

toml 复制代码
[package]
name = "hello-world"
version = "0.1.0"
edition = "2021"

[dependencies]

完全看不懂。 忽略。

9. Cargo run 在运行什么

bash 复制代码
cargo run
bash 复制代码
./target/debug/hello-world

10. 不用 cargo 呢?

hello.rs:

rust 复制代码
fn main()
{
    println!("Hello, Rust");
    println!("What a day!");
}

编译:

bash 复制代码
rustc hello.rs

运行:

bash 复制代码
./hello

结果:

bash 复制代码
Hello, Rust
What a day!

11. 总结

给出了 Rust 的安装,以及创建、运行、简单理解 hello-world 工程的步骤。

12. 参考

相关推荐
对象存储与RustFS19 小时前
用 rclone 把现有 S3/MinIO 数据同步到 RustFS
后端·rust·开源
2501_915918411 天前
Rust 程序抓包解密,rustls 不认系统证书的几种办法
开发语言·后端·网络协议·ios·adb·https·rust
学心理学的程序员1 天前
anydoc:Firecrawl 出的 Rust 文档转 Markdown,4ms 转换、14 种格式干翻 MarkItDown
开发语言·后端·rust·开源·firecrawl·claude code·anydoc
Flynt1 天前
OpenAI把Codex底层从TS重写成Rust,我拆开看了下它的三层架构
rust·openai·agent
第一程序员2 天前
AI 辅助编程的 7 个误区:把模型当高级搜索引擎是对它的最大浪费
python·rust·github
NutShell Wang2 天前
Firecrawl anydoc 实战拆解:用一个 Rust 依赖吃下 14 种文档格式
性能优化·rust·vibe coding
DevHub2 天前
probe-rs 教程:一行命令替代 OpenOCD 烧写调试 Cortex-M
arm开发·嵌入式硬件·mcu·rust
程序员爱钓鱼2 天前
Rust const泛型详解:让常量也成为泛型参数
后端·面试·rust
k4m7v2pz2 天前
ESP32-S3 + I2S 麦克风实时音频流静音问题排查:从网络到AGC的谬误溯源
rust·音频·esp32·agc·实时监听·静音排查
SomeB1oody2 天前
【RustyML入门】7.4. 按需裁剪与模块化集成
开发语言·后端·机器学习·rust·教程