首页 > 其他分享 >Rust 适合傻瓜、白痴、初学者和其他所有人! — 第 1 部分:Hello World 和货物

Rust 适合傻瓜、白痴、初学者和其他所有人! — 第 1 部分:Hello World 和货物

时间:2022-08-30 16:44:34浏览次数:79  
标签:Cargo 文件 Hello World 源代码 我们 Rust

Rust 适合傻瓜、白痴、初学者和其他所有人! — 第 1 部分:Hello World 和货物

介绍

再次问候铁锈爱好者。如果您还没有查看上一篇文章,如果您想简要了解 Rust 并设置您的编程环境,请随时查看。在本文中,我们将看看强制性介绍 你好世界 程序,我们将看看 货物 — Rust 的包管理器。对于所有 Python 用户在那里,Cargo 是为了 Rust 什么 画中画 是Python。

你好世界

Hello World!

让我们打印短语 你好世界 到我们的终端。我们将首先创建一个项目目录,并用我们的主文件填充它。命令可能因您的操作系统而异,但以下是 Linux 和 Mac 系统非常常用的:

Creating a Project File for Rust

我们将开放 main.rs 在我们选择的代码编辑器中,必须做两件事:

  1. 定义我们的主要功能。 main 函数很特殊,它始终是执行 rust 文件时运行的第一个代码。函数是一块可重用的代码。
  2. 包括我们的打印声明。此行将文本打印到屏幕上。这里有一些重要的细节需要注意。首先,Rust 风格是缩进四个空格,而不是制表符。第二,你看到 “你好世界!” 细绳。我们将此字符串作为参数传递给 打印! , 字符串被打印到屏幕上。最后,我们以分号( ; ),表示这个表达式已经结束,下一个表达式已经准备好开始了。大多数 Rust 代码行都以分号结尾。

A typical Main Function with a Print Statement

以前使用过编译语言的读者可能会觉得以下内容很熟悉。我们必须编译我们的源代码。编译是从源代码(人类可读)到机器代码(计算机可执行文件)的转换。

假设您的文件是用 main.rs .

Compiling our Main File.

如果一切顺利,一个名为的可执行文件 主要的 会生成。让我们运行它!运行该文件,将在您的命令行中生成一个输出 “你好世界!” .随意更改文本,并打印出任何可以让您开心的内容。

Cargo — Rust 包管理器

Packages People Packages!

Cargo 是 Rust 的构建系统和包管理器。许多 rust 用户非常喜欢使用这个工具来管理他们的项目,因为 Cargo 处理了很多任务,比如处理代码、下载和构建库。

像上面这样的简单 Rust 程序没有依赖关系。如果您要使用 Cargo 运行“Hello, world!” project ,它只需要构建项目,因为没有外部库需要管理。 Cargo 将为您可能承担的未来项目做很多繁重的工作,这些项​​目将依赖于外部库。

Cargo 是在你下载 Rust 时下载的,所以如果你已经下载了 Rust/请按照上一篇文章进行操作。让我们看一下使用 Cargo 创建和管理项目。

Create Cargo binary Application and enter directory

在目录中,我们可以看到 Cargo 生成了许多文件,包括 货运.toml源代码 ,其中包含我们的主要源代码文件 main.rs .

值得注意的是,它还初始化了一个 混帐 存储库 以及一个 gitignore 文件。

让我们来看看 .toml 文件。扩展名代表 汤姆明显的最小语言 .当我们探索这个文件时,我们可以看到 Rust 编译代码所需的信息,包括要使用的 Rust 版本。将来,我们将在此标题下列出所有依赖项。有趣的是,在 Rust 中,代码包被称为 crates……通过 Cargo 的 crates……明白吗?

除了可疑的幽默......

值得注意的是,Cargo 产生了 源代码 Rust 期望我们存储源代码的文件夹。顶级目录用于存放配置文件、自述文件和许可证信息。

但是足够的谈话 - 让我们构建我们的项目。在 cargo 目录的顶层,让我们执行以下命令:

Build and Execute Your Cargo Project

首先在目标目录中构建一个可执行文件。一个文件叫 货锁 生成跟踪项目的版本依赖关系。最后我们执行生成的二进制文件。

很好,很好,然而,Rust 为我们加快了这个过程,我们可以通过一个单一的命令来完成这两个过程,而不是手动构建和执行:

Build and Execute Your Cargo Project with a Single Command

结论

那是很多,但是嘿,我们现在已经准备好开始一些很棒的项目了。在下一篇文章中,我们将开始学习一些 Rust 语法,以构建项目为目标。直到下一次!

关于作者

我是 卢克 我在马耳他大学攻读了电气和电子工程学士学位,在那里我学习了嵌入式系统。之后,我在伦敦大学玛丽皇后学院攻读人工智能理学硕士学位。从那时起,我一直从事人工智能和物联网工程师的工作。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/1710/38043016

标签:Cargo,文件,Hello,World,源代码,我们,Rust
From: https://www.cnblogs.com/amboke/p/16639923.html

相关文章

  • MySQL无法重启报错Warning: World-writable config file ‘/etc/my.cnf’ is ignored
    MySQL无法重启报错Warning:World-writableconfigfile‘/etc/my.cnf’isignored的解决方法_Mysql_脚本之家 https://www.jb51.net/article/99027.htm问题分析在关......
  • HelloWorld
    盘点自己较熟悉的语言作为第一个博客!C++#include<iostream>usingnamespacestd;intmain(){cout<<"Hello,world!"<<endl;return0;}Py......
  • 0032-Rust-自实现迭代器
    环境Time2022-05-21Rust1.61.0前言说明参考:https://doc.rust-lang.org/std/iter/index.html目标接前一节,在迭代的过程中,修改每个迭代的元素。自定义类型#[der......
  • 0033-Rust-实现递归迭代
    环境Time2022-05-21Rust1.61.0前言说明参考:https://fasterthanli.me/articles/recursive-iterators-rust目标对于递归类型的结构,实现递归迭代。自定义类型str......
  • Rust极简教程
    据说,Rust语言语法的高门槛是劝退很多人上手的主要原因。确实,Rust语言希望解决C/C++手工管理内存的问题,但是又不想引入类似golang,java的GC机制。因此,为了能让编译器能够......
  • 0025-Rust-自实现迭代器
    环境Time2022-05-21Rust1.61.0前言说明参考:https://doc.rust-lang.org/std/iter/trait.IntoIterator.html目标前一节自定义了一个类型来实现迭代器,并且自定义了......
  • 0023-Rust-自实现迭代器
    环境Time2022-05-19Rust1.60.0前言说明参考:https://doc.rust-lang.org/std/iter/index.html目标针对自定义类型,实现一个迭代器。自定义类型#[derive(Default,......
  • 0013-wasm-hello world
    环境Time2022-05-12Rust1.60.0Node12.22.5wasm-pack0.10.2前言说明环境配置参考:https://rustwasm.github.io/docs/book/game-of-life/setup.html参考:https:/......
  • 我在 Rust 中的第一个真实代码
    我在Rust中的第一个真实代码每种语言都始于游乐场。你可以在那里做一些令人惊奇的事情,但它们就像邻近的儿童沙饼一样令人惊奇。一旦你从操场进入“做一些真正的事情”,......
  • Hello出行海量日志系统架构演进
    本文摘自我的公众号【陶朱公Boy】文章:《Hello出行海量日志系统架构演进》欢迎大家的关注!公众号回复关键字”日志“进行完整PPT文档的下载!Hello出行海量日志系统架构......