IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> RUST-下载更新卸载rust、编写简单程序、cargo的基本使用、let、mach等方法、外部的crate -> 正文阅读

[开发工具]RUST-下载更新卸载rust、编写简单程序、cargo的基本使用、let、mach等方法、外部的crate

配置

下载

进入官网,点击install
在这里插入图片描述在这里插入图片描述

更新

rustup update

卸载

rustup self install

安装验证

rustc --version
在这里插入图片描述出现版本即为成功

本地文档

运行rustup doc可以在浏览器打开本地文档

编写Rust程序

编写

fn main(){
    println!("hello world")
}

在这里插入图片描述

编译与运行

rustc 只适合小程序

rustc main.rs 编译(只适合简单的程序)
-win: .\main.exe
-linux\mac: ./main 运行
在这里插入图片描述

Cargo

使用cargo创建项目 cargo new 项目名

cargo new hello_cargo
会创建一个新的目录 hello_cartgo ,项目名也是hello_cargo

  • Cargo.toml
  • src目录
  • —main.rs
  • 初始化了一个新的git仓库 .gitgnore

toml格式,是cargo的配置格式

[package] 内容是用来配置包的
[dependencies] 列出项目的依赖项

在rust中,代码的包称作crate

  • cargo生成的main.rs在src目录下
  • 而Cargo.toml在项目顶层下
  • 源代码都应该在src目录下
  • 顶层目录可以放置:readme、许可信息、配置文件和其他与程序源码无关的文件
  • 如果创建项目时没有使用cargo,也可以把项目转化为使用cargo:
    把源代码移动到src下
    创建cargo.toml并填写相应的配置

构建cargo项目 cargo build

在这里插入图片描述

编译+运行cargo项目 cargorun

检查代码,确保能通过编译 但是不产生可执行文件,比build快得多

为发布构建 cargo build --release

编译时会进行优化,代码会运行的更快,但是编译时间更长
会在target/release而不是target/debug生成可执行文件
两种配置

  • 一个开发
  • 一个正式发布

猜测游戏

  • 建立项目 cargo new guessing_game
  • let声明的变量是不可变得‘
  • 加mut是可变的
  • & 引用默认也是不可变的
  • io::Result Ok,Err
  • Except 如果接受到Error,就把用户的输入输出
  • {} 是占位符
use std::io; //可以进行输入输出
fn main() {
    println!("猜数");
    println!("猜测一个数");
    let foo=1;//变量不可变
    let bar=foo;//immutable
    let mut guess=String::new();//变量可变
    io::stdin().read_line(&mut guess).expect("无法读取行");
    println!("你猜测的数字是:{}",guess);
}

产生随机数

添加依赖

在cargo.toml中【dependencies】添加rand=“0.3.14”

use rand::Rng;
fn main() {
    let secret_num=rand::thread_rng().gen_range(1,101);
    println!("数字是{}",secret_num);
}

比较数字大小

//允许使用同名变量,覆盖原来变量
 //将guess转换成int类型
    let guess:i32=guess.trim().parse().expect("数据转换失败");
    //类似于switch
    match guess.cmp(&secret_num){

        std::cmp::Ordering::Less => print!("小"),
        std::cmp::Ordering::Equal => println!("相同"),
        std::cmp::Ordering::Greater => println!("大"),
    }

循环

loop

//将guess转换成int类型,使用match可以对转化错误时进行处理
        let guess:i32=match guess.trim().parse(){
            Ok(num)=>num,//接收的数据就是需要的数据
            Err(_)=>continue,//下划线不关心错误信息

        };

参考视频

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-09-07 11:01:45  更:2021-09-07 11:02:20 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 5:44:12-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码