Rust语言入门练习1

c++又很多库,特别是关于工程计算方面的,但是c++用起来太难了,特别是内存管理,很难预测它什么时候崩溃,什么时候内存爆满,内存释放问题很让人头疼。

Rust语言试图解决c++的这个内存管理的弊端,但是处于对效率及底层处理的要求,放弃了c#和java甚至go那样基于垃圾回收器的处理方式,而是采用了全新的一套处理方式,很有意思。这是个兼顾效率和安全的编程语言,不经可以用在系统编程,也可以用来web编程,很有发展前景。

下面这个教程中的例子,是个猜字游戏,展示了rust语言的一些主要特性。

use std::io;
use std::cmp::Ordering;
use rand::Rng;

fn main() {
    println!("Hello, world!");
    let secret_number = rand::thread_rng().gen_range(1,101);
    println!("The sceret number is :{}", secret_number);
    loop{
        println!("Please input your guess:");
        let mut guess: String = String::new();
        io::stdin().read_line(&mut guess).expect("Failed to read line");
        let guess:u32 = guess.trim().parse().expect("Please type a number");
        println!("You guessed: {}", guess);

        match guess.cmp(&secret_number) {
            Ordering::Less=>println!("Too samll!"),
            Ordering::Greater=>println!("Too big!"),
            Ordering::Equal=>{
                println!("You win!");
                break;
            },
        }
    }
}

下面是运行结果

Hello, world!
The sceret number is :99
Please input your guess:
8
You guessed: 8
Too samll
Please input your guess:
45
You guessed: 45
Too samll
Please input your guess:
99
You guessed: 99
You win

这个例子介绍了 Rust 新概念:letmatch、方法、关联函数、使用外部 crate ,循环,异常处理,等等

 

posted @ 2022-08-21 10:13  Oliver2022  阅读(119)  评论(0编辑  收藏  举报