Rust-获取随机数练习案例

文章目录


前言

Rust学习系列-获取随机数练习案例,基于cargo 进行案例练习,过程中会使用cargo check; cargo run;等命名,同时了解基础的let ,mut ,io,rang 库等;如何添加依赖,排除报错。🚀


一、取官网示例猜数字游戏玩一玩

我们故意不加依赖,运行 **cargo check **

rust 复制代码
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文件的优势包括:

  1. 易于阅读和编写:TOML文件采用类似INI文件的格式,非常易于理解和修改。

  2. 通用性:TOML可以在多种编程语言中使用,因此可以在不同的项目和系统中共享和重用配置。

  3. 嵌套和分组:TOML文件支持嵌套和分组的配置,可以更好地组织和管理配置信息。

  4. 注释:TOML文件支持注释,可以在配置文件中添加说明和备注。

  5. 类型推断:TOML文件可以根据值的格式自动推断数据类型,无需显式指定类型。

TOML文件通常用于配置应用程序、服务器和各种软件工具的设置。它提供了一种简单且易于理解的方式来定义和管理各种配置选项。

其中,我们用到io,点击报错提示如下,还给了解决方案。

use std::io

类似我们根据报错引入依赖。 cargo check 通过后,我们cargo run 就运行程序。

成功获取一个随机数🌲 ✌🏻

二、完整代码

rust 复制代码
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 库等;如何添加依赖,排除报错。

相关推荐
对象存储与RustFS8 小时前
升级 RustFS 二进制不停机:一条一条换,留一条退路
后端·rust·开源
hasty8 小时前
限制写了却没生效:OpenTelemetry Go 的 Unicode 截断边界
开发语言·后端·golang
编码者卢布9 小时前
【App Service 】WebJobs 多实例实验:谁在运行,什么时候运行?
开发语言·python
kaixin_learn_qt_ing9 小时前
Qt抽屉窗体实现demo
开发语言·qt
quantdash_cc9 小时前
Python 获取实时行情后如何进行批量筛选?从全市场快照到策略候选池
开发语言·python·数据分析·量化交易·股票数据·quantdash
论文复现现场10 小时前
论文复现看到“RTX 3090 or higher”:显存、CUDA、batch size 与 OOM 怎么判断?
开发语言·pytorch·batch·cuda·rtx3090
智鸟科技GemeOpen开发者智能设备10 小时前
GemeOpen 智能音箱 GSSM0B - 播放控制(Java示例)
java·开发语言·智能音箱
m0_3807438710 小时前
PHP 8.3 接口返回数据为空怎么排查
开发语言·php
感谢地心引力10 小时前
来试试我做的音乐播放器吧
ai·rust·音乐·navidrome·music·tarui
谢亮_vipxieliang11 小时前
Java 21 新特性实战:Record、Sealed、模式匹配
java·开发语言