rust使用教程详解

欢迎来到 Rustlings。该项目包含一些小练习,让您习惯阅读和编写 Rust 代码。这包括阅读和响应编译器消息!

建议在阅读Rust 官方书籍(学习 Rust 最全面的资源)的同时做 Rustlings 练习 📚️

Rust By Example是另一个推荐资源,你可能会觉得有用。它包含与 Rustlings 类似的代码示例和练习,但在线。

入门

安装 Rust

在安装 Rustlings 之前,您需要安装最新版本的 Rust。请访问www.rust-lang.org/tools/install获取有关安装 Rust 的更多说明。这还将安装Cargo,即 Rust 的包/项目管理器。

🐧 如果您使用的是 Linux,请确保已安装gcc(链接器)。

Deb:sudo apt install gcc。Dnf sudo dnf install gcc:。

🍎 如果您使用的是 MacOS,请通过运行确保您已安装 Xcode 及其开发人员工具xcode-select --install

安装 Rustling

以下命令将下载并编译 Rustlings:

cargo install rustlings

如果安装失败...点击展开

初始化

安装Rustlings后,运行以下命令初始化rustlings/目录:

rustlings init

rustlings如果找不到命令... (单击展开

现在,进入新初始化的目录并启动 Rustlings 以获取有关开始练习的进一步说明:

cd rustlings/
rustlings

工作环境

编辑

我们一般推荐使用带有rust-analyzer 插件的VS Code。但任何支持rust-analyzer 的编辑器都应该足以完成练习。

终端

使用 Rustlings 时,请使用现代终端以获得最佳用户体验。Linux 和 Mac 上的默认终端应该足够了。在 Windows 上,我们推荐使用Windows 终端。

做运动

练习按主题分类,可在子目录中找到exercises/<topic>。对于每个主题,都有一个附加README.md文件,其中包含一些资源,可帮助您开始学习该主题。我们强烈建议您在开始之前先查看它们 📚️

大多数练习都包含一个错误,导致它们无法编译,而修复它则取决于你!有些练习包含需要通过的测试才能完成练习✅

搜索TODOtodo!()找出您需要更改的内容。进入h观看模式询问提示💡

观看模式

初始化后,只需运行命令即可启动Rustlings rustlings

这将启动监视模式,该模式将按照预定义的顺序引导您完成练习(我们认为这对新手来说是最好的)。每次您更改目录中的练习文件时,它都会自动重新运行当前练习exercises/

如果检测目录中的文件更改exercises/失败...单击展开

练习列表

在手表模式下(启动后rustlings),您可以进入l打开交互式锻炼列表。

该列表允许您...

  • 查看所有练习的状态(已完成或待完成)
  • c:继续另一项练习(暂时跳过一些练习或返回上一个练习)
  • r:重置练习的状态和文件(之后您需要在编辑器中重新加载/重新打开其文件)

请参阅列表页脚以了解所有可能的键。

继续

完成 Rustlings 后,请充分利用新知识!通过构建自己的项目、为 Rustlings 做贡献或寻找其他开源项目来继续练习 Rust 技能。

第三方演习

第三方练习是由社区维护的一组练习。您可以使用rustlings安装的相同程序cargo install rustlings来运行它们:

  • 日本语版 Rustlings:Ruslings 练习的日文翻译。

您想创建自己的 Rustlings 练习集来专注于某些特定主题吗?或者您想翻译原始的 Rustlings 练习吗?那么请按照有关第三方练习的指南进行操作!

卸载 Rustlings

如果您想从系统中删除 Rustlings,请运行以下命令:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/890562.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

php 生成随机数

记录&#xff1a;随机数抽奖 要求&#xff1a;每次生成3个 1 - 10 之间可重复&#xff08;或不可重复&#xff09;的随机数&#xff0c;10次为一轮&#xff0c;每轮要求数字5出现6次、数字4出现3次、…。 提炼需求&#xff1a; 1&#xff0c;可设置最小数、最大数、每次抽奖生…

CentOS7.9 下安装 Docker

第一步&#xff1a; sudo yum install -y yum-utils \ > device-mapper-persistent-data \ > lvm2 第二步&#xff1a;安装 sudo wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo sudo yum -y install…

C语言刷题 LeetCode 删除单链表的重复节点 双指针法

题目要求 链表结构&#xff1a;题目中提到的是未排序的链表&#xff0c;链表是由一系列节点组成的&#xff0c;每个节点包含一个值&#xff08;数据&#xff09;和一个指向下一个节点的指针。去重&#xff1a;我们需要遍历链表&#xff0c;删除所有重复的节点&#xff0c;只保…

组合式API有什么好处

什么是组合式API&#xff1f; 组合式 API (Composition API) 是一系列 API &#xff08;响应式API、生命周期钩子、依赖注入&#xff09;的集合。它不是函数式编程&#xff0c;组合式 API 是以 Vue 中数据可变的、细粒度的响应性系统为基础的&#xff0c;而函数式编程通常强调…

一个项目用5款数据库?MySQL、PostgreSQL、ClickHouse、MongoDB区别,适用场景

文章目录 一、常用数据库概览1.1 关系型数据库1.2 非关系型数据库1.2.1 KV数据库1.2.2 文档型数据库1.2.3 列式存储数据库1.2.4 图数据库 1.3 SQL与NoSQL区别1.3.1 结构化与非结构化1.3.2 关联和非关联1.3.3 查询方式1.3.4 事务1.3.5 总结 二、MySQL三、PostgreSQL3.1 特点、适…

ARM base instruction -- smull

有符号乘法运算 Signed Multiply Long multiplies two 32-bit register values, and writes the result to the 64-bit destination register. 将两个32位寄存器值相乘&#xff0c;并将结果写入64位目标寄存器。 64-bit variant SMULL <Xd>, <Wn>, <Wm>…

二叉树LeetCode刷题

二叉树LeetCode刷题 1. 检查两颗树是否相同2. 另一颗树的子树3. 翻转二叉树4. 判断一颗二叉树是否是平衡二叉树5. 二叉搜索树与双向链表6. 对称二叉树7. 二叉树的构建及遍历8. 二叉树的分层遍历9. 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先10. 根据一棵树的前序遍…

单片机IO电流倒灌

最近在某视频上看到了一个博主因为IO口电流倒灌导致ADC参考基准电压不准&#xff0c;致使ADC采样数据不准。抱着什么是IO电流倒灌的疑问&#xff0c;学习了一些文章&#xff0c;防止以后踩坑。并在下面做一下对IO口电流倒灌的总结。 目录 # 一、什么是IO电流倒灌 # 二、电流倒…

PHP商会招商项目系统一站式服务助力企业腾飞

商会招商项目系统——一站式服务&#xff0c;助力企业腾飞 &#x1f680;&#x1f4bc; &#x1f680; 开篇&#xff1a;企业成长的加速器&#xff0c;商会招商项目系统来袭 在竞争激烈的市场环境中&#xff0c;企业如何快速找到适合自己的发展路径&#xff0c;实现腾飞&…

电脑知识:适用于 Windows 10 的 PDF 编辑器列表

PDF 是一种流行的、多功能且安全的文件格式&#xff0c;用于在线共享文档。但是&#xff0c;如果没有合适的应用程序&#xff0c;查看和编辑 PDF 文件可能会变得复杂。 幸运的是&#xff0c;有很多 PDF 编辑器可以帮助您更正重要文档上的错误、填写表格、为合同添加签名、更改…

电脑基础知识:mfc110.dll丢失的解决方法

1.mfc110.dll 丢失常见原因 mfc110.dll 文件的丢失或损坏是Windows系统中常见的问题&#xff0c;它可能由多种原因引起&#xff0c;以下是一些主要的因素&#xff1a; 不完全的软件卸载 在卸载程序时&#xff0c;如果相关的 DLL 文件没有被正确移除&#xff0c;可能会导致文件…

linux 环境运行 jenkins.war包,有可能会出现字体问题,jdk版本:11 jenkins 版本:2.420

jenkins的目录&#xff1a; /usr/jenkins 启动命令 java -Djava.awt.headlesstrue sudo timedatectl set-timezone Asia/Shanghai-Xmx1024m -jar jenkins.war --httpPort8090 任意目录启动&#xff1a; nohup java -Djava.awt.headlesstrue -Xms1024m -Xmx1024m -jar /usr/j…

【C++笔试强训】如何成为算法糕手Day7

学习编程就得循环渐进&#xff0c;扎实基础&#xff0c;勿在浮沙筑高台 循环渐进Forward-CSDN博客 目录 循环渐进Forward-CSDN博客 字符串中找出连续最长的数字串 思路&#xff1a; 岛屿数量 思路&#xff1a; 深度优先遍历DFS 广度优先遍历 BFS 并查集 拼三角 思路…

学成在线——关于nacos配置优先级的坑

出错&#xff1a; 本地要起两个微服务&#xff0c;一个是content-api&#xff0c;另一个是gateway网关服务。 发现通过网关服务请求content微服务时&#xff0c;怎么请求都请求不到。 配置如下&#xff1a; content-api-dev.yaml的配置&#xff1a; server:servlet:context-p…

【华为】配置BGP协议

边界网关协议BGP是一种实现自治系统AS之间的路由可达&#xff0c;并选择最佳路由的距离矢量路由协议。BGP在不同自治系统之间进行路由转发&#xff0c;分为EBGP&#xff08;外部边界网关协议&#xff09;和IBGP&#xff08;内部边界网关协议&#xff09;两种情况。 [A]in g0/0/…

HTML(七)表格

在HTML中&#xff0c;表格的标准形式如下&#xff1a; <table></table> 使用上面的语言&#xff0c;就已经生成了一个表格&#xff0c;只不过这个表格什么都没有 那么&#xff0c;该如何让表格存在东西呢&#xff1f; 首先&#xff0c;我们需要使用到<tr> …

C++ 匿名对象(没有名字的对象,类似于临时对象)

个人主页&#xff1a;Jason_from_China-CSDN博客 所属栏目&#xff1a;C系统性学习_Jason_from_China的博客-CSDN博客 所属栏目&#xff1a;C知识点的补充_Jason_from_China的博客-CSDN博客 概念概述 用类型(实参)定义出来的对象叫做匿名对象&#xff0c;相比之前我们定义的类型…

【Windows】【DevOps】Windows Server 2022 安装ansible,基于powershell实现远程自动化运维部署 入门到放弃!

目标服务器安装openssh server参考 【Windows】【DevOps】Windows Server 2022 在线/离线 安装openssh实现ssh远程登陆powershell、scp文件拷贝-CSDN博客 注意&#xff1a;Ansible不支持Windows操作系统部署 根据官方说明&#xff1a; Windows Frequently Asked Questions —…

如何使用IntelliJ IDEA生成UML图

&#x1f3dd;️ 博主介绍 大家好&#xff0c;我是一个搬砖的农民工&#xff0c;很高兴认识大家 &#x1f60a; ~ &#x1f468;‍&#x1f393; 个人介绍&#xff1a;本人是一名后端Java开发工程师&#xff0c;坐标北京 ~ &#x1f389; 感谢关注 &#x1f4d6; 一起学习 &…

WPF 为button动态设置不同的模板

有时候需要动态的设置一些按钮的状态模板。使一个button显示不同的内容&#xff0c;比如Button未点击安装显示&#xff1a; 安装后显示&#xff1a; 可以通过设置button的content&#xff0c;通过content来设置不同的模板来实现功能&#xff0c;以下是代码&#xff1a; MainWi…