【rust杂乱笔记】

code . 打开vscode

rust 复制代码
fn main() {
    println!("hello world!")
}

loop{}循环; break跳出循环

rust 复制代码
// 引入三方库
use rand::Rng;
// 引入标准库中的输入输出
use std::cmp::Ordering;
use std::io;

// main函数 先执行main函数
fn main() {
    // 打印的宏方法
    // 打印提示信息
    println!("Guess the number!");

    //0. 生成随机数
    let secret_number = rand::thread_rng().gen_range(1, 101);

    // println!("secret_number is: {}", secret_number);

    println!("please input your guess");
    loop {
        // 1.新建guess 字符串变量  mut 表示可以修改的变量 是"mutable 可变的" 的简称
        let mut guess = String::new();
        // 2.读取输入  stdin 标准的输入方法   read_line输入方法中的获取输入的方法  &mut guess 是引用(可能是类似c中的取地址符)  expect??目前无法理解
        io::stdin().read_line(&mut guess).expect("failed to read");

        // 字符转化为数字  trim 去除前后空白字符  parse 转化为某种类型
        // 为了代码的健壮性,防止输入非数字是 崩溃  做如下处理
        let guess: u32 = match guess.trim().parse() {
            Ok(num) => num,     //成功返回num
            Err(_) => continue, //错误 不崩溃
        };
        // 打印输入的guess  {}是占位符 插入 后面的参数  可以 有多个{}占位符  一次对应 后面的参数
        println!("you guessed: {}", guess);

        // 3.比较两个数
        match guess.cmp(&secret_number) {
            Ordering::Less => println!("small"),
            Ordering::Greater => println!("large"),
            Ordering::Equal => {
                println!("you win !");
                break;
            }
        }
    }
}
rust 复制代码
    let i = 10;
    i = 20;//报错 不能修改
    let i = i + 20;//shadow
    println!("{}", i);//30
rust 复制代码
fn main() {
    let guess: i32 = "87".parse().expect("not number");
    println!("{}", guess);
}

相关推荐
std78799 小时前
Rust 与 Go – 比较以及每个如何满足您的需求
开发语言·golang·rust
Amos_Web1 天前
Rust实战教程--文件管理命令行工具
前端·rust·全栈
alwaysrun1 天前
Rust中字符串与格式化
rust·display·格式化·string·str·精度
魔镜前的帅比1 天前
(开源项目)XSUN_DESKTOP_PET 2 (桌面宠物)
rust·宠物·tauri2
0110_10241 天前
tauri + rust的环境搭建---初始化以及构建
开发语言·后端·rust
像风一样自由20201 天前
Rust Tokio vs Go net/http:云原生与嵌入式生态选型指南
开发语言·golang·rust
大鱼七成饱2 天前
Rust Web 初学者必看:用一个宏搞定错误处理和统一返回
rust
Vallelonga2 天前
Rust 设计模式 Marker Trait + Blanket Implementation
开发语言·设计模式·rust
ftpeak2 天前
《Cargo 参考手册》第二十一章:Cargo 包命令
开发语言·rust
Source.Liu2 天前
【BuildFlow & 筑流】品牌命名与项目定位说明
c++·qt·rust·markdown·librecad