文章目录
- 前言
- 一、取官网示例猜数字游戏玩一玩
- cargo check
- TOML文件
- 二、完整代码
- 总结
前言
Rust学习系列-获取随机数练习案例,基于cargo 进行案例练习,过程中会使用cargo check; cargo run;等命名,同时了解基础的let ,mut ,io,rang 库等;如何添加依赖,排除报错。🚀
一、取官网示例猜数字游戏玩一玩
我们故意不加依赖,运行 **cargo check **
fn main() {
println!("Guess the number!");
let secret_number = rand::thread_rng().gen_range(1..101);
println!("The secret number is: {}", secret_number);
println!("Please input your guess.");
let mut guess = String::new();
io::stdin()
.read_line(&mut guess)
.expect("Failed to read line");
println!("You guessed: {}", guess);
}
cargo check
cargo check 是一个 Rust 语言的命令行工具,用于快速检查项目的语法错误和类型错误,而无需进行编译和构建整个项目。
使用 cargo check 可以加快错误检查的速度,因为它只进行语法和类型检查,并不会生成可执行文件或库。这样可以在编写代码的过程中及时捕捉到可能的错误,而无需等待编译和构建的时间。
与 cargo build 不同的是,cargo check 不会生成可执行文件或库,因此它更适合用于快速检查代码,而不是进行最终的编译和构建。它通常用于开发过程中,在运行测试或调试代码之前进行快速检查,以确保代码的正确性。
要使用 cargo check,只需在项目根目录下运行命令:cargo check。它会检查项目中的所有文件,并输出可能的错误信息和建议。
总结起来,cargo check 是一个可以快速检查 Rust 项目的语法和类型错误的命令行工具,它提供了一种快速检查代码错误的方式,无需进行完整的编译和构建过程。它在开发过程中很有用,可以及时发现问题并进行修复。
不出所料,缺少依赖。那么依赖怎么加呢?
就在这个后缀.toml, 提示一个× 还写着0.8.5 那就改为 0.85 结果不报错了。
TOML文件
后缀为.toml的文件是一种配置文件,使用TOML(Tom’s Obvious, Minimal Language)语法来表示和存储配置信息。TOML是一种易于阅读和编写的配置文件格式,旨在成为几乎所有编程语言中的通用配置格式。
TOML文件的结构相对简单,由键值对组成,可以使用基本数据类型(如字符串、整数、浮点数)来表示值,还可以使用表(table)来表示嵌套和分组的配置。
.TOML文件的优势包括:
-
易于阅读和编写:TOML文件采用类似INI文件的格式,非常易于理解和修改。
-
通用性:TOML可以在多种编程语言中使用,因此可以在不同的项目和系统中共享和重用配置。
-
嵌套和分组:TOML文件支持嵌套和分组的配置,可以更好地组织和管理配置信息。
-
注释:TOML文件支持注释,可以在配置文件中添加说明和备注。
-
类型推断:TOML文件可以根据值的格式自动推断数据类型,无需显式指定类型。
TOML文件通常用于配置应用程序、服务器和各种软件工具的设置。它提供了一种简单且易于理解的方式来定义和管理各种配置选项。
其中,我们用到io,点击报错提示如下,还给了解决方案。
use std::io
类似我们根据报错引入依赖。 cargo check 通过后,我们cargo run 就运行程序。
成功获取一个随机数🌲 ✌🏻
二、完整代码
use std::io;
use rand::Rng;
fn main() {
println!("Guess the number!");
let secret_number = rand::thread_rng().gen_range(1..10000);
println!("The secret number is: {}", secret_number);
println!("Please input your guess.");
let mut guess = String::new();
io::stdin()
.read_line(&mut guess)
.expect("Failed to read line");
println!("You guessed: {}", guess);
}
总结
基于cargo 进行获取随机数的案例练习,过程中会使用cargo check; cargo run;等命名,同时了解基础的let ,mut ,io,rang 库等;如何添加依赖,排除报错。