Rust 语言入门
文章来源:Rust 编程语言 -- Rust教程|Rust中文文档|Rust编程|Rust官方文档
安装
第一步是安装 Rust。我们将通过 下载 Rust,一个 用于管理 Rust 版本和相关工具的命令行工具。您将需要 用于下载的 Internet 连接。rustup
注意: 如果你出于某种原因不想使用,请参阅其他 Rust 安装方法页面以获取更多选项。rustup
以下步骤安装 Rust 编译器的最新稳定版本。 Rust 的稳定性保证确保了书中所有 compile 将继续使用较新的 Rust 版本进行编译。输出可能会 版本之间略有不同,因为 Rust 经常改进错误消息和 警告。换句话说,您使用 这些步骤应该可以按预期与本书的内容一起工作。
命令行表示法
在本章和整本书中,我们将展示 终端。应在终端中输入的行均以 .你 不需要键入字符;它是命令行提示符,显示给 指示每个命令的开始。通常不以 显示上一个命令的输出。此外,特定于 PowerShell examples 将使用 而不是 。$
$
$
>
$
在 Linux 或 macOS 上安装 rustup
如果您使用的是 Linux 或 macOS,请打开终端并输入以下命令:
$ curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh
该命令将下载一个脚本并开始安装该工具,该工具将安装 Rust 的最新稳定版本。系统可能会提示您 获取您的密码。如果安装成功,将显示以下行:rustup
Rust is installed now. Great!
您还需要一个链接器,这是 Rust 用来加入其 编译的输出到一个文件中。您可能已经有一个。如果您获得 链接器错误,您应该安装 C 编译器,该编译器通常包括 连接。C 编译器也很有用,因为一些常见的 Rust 包依赖于 C 代码,并且需要一个 C 编译器。
在 macOS 上,您可以通过运行以下命令来获取 C 编译器:
$ xcode-select --install
Linux 用户通常应该根据他们的 发行版的文档。例如,如果您使用 Ubuntu,则可以安装 包。build-essential
在 Windows 上安装 rustup
在 Windows 上,转到 Install Rust - Rust Programming Language 并遵循 安装 Rust 的说明。在安装过程中的某个时刻,您将 系统提示安装 Visual Studio。这提供了一个链接器和原生 编译程序所需的库。如果您需要有关此步骤的更多帮助,请参阅 MSVC prerequisites - The rustup book
本书的其余部分使用适用于 cmd.exe 和 PowerShell 的命令。 如果存在具体差异,我们将说明使用哪个。
故障 排除
要检查您是否正确安装了 Rust,请打开 shell 并输入以下内容 线:
$ rustc --version
您应该会看到最新版本的版本号、提交哈希和提交日期 已发布的稳定版本,格式如下:
rustc x.y.z (abcabcabc yyyy-mm-dd)
如果您看到此信息,则表示您已成功安装 Rust!如果你没有 查看此信息,检查 Rust 是否在你的系统变量中为 遵循。%PATH%
在 Windows CMD 中,使用:
> echo %PATH%
在 PowerShell 中,使用:
> echo $env:Path
在 Linux 和 macOS 中,使用:
$ echo $PATH
如果这一切都是正确的,但 Rust 仍然没有工作,那么有很多 您可以获取帮助的地方。了解如何与其他 Rustacean 取得联系 (a 我们称自己为愚蠢的昵称)。
更新和卸载
通过 安装 Rust 后,更新到新发布的版本就是 容易。在 shell 中,运行以下更新脚本:rustup
$ rustup update
要卸载 Rust 和 ,请从 壳:rustup
$ rustup self uninstall
本地文档
Rust 的安装还包括文档的本地副本,因此 您可以离线阅读。Run 以打开本地文档 在浏览器中。rustup doc
每当标准库提供类型或函数,而您不是 确定它的作用或如何使用它,请使用 Application Programming Interface (API) 文档一探究竟!
现在您已经安装了 Rust,是时候编写您的第一个 Rust 程序了。 传统上,在学习一门新语言时编写一个小程序 将文本打印到屏幕上,因此我们将在此处执行相同的作!Hello, world!
注意:本书假定您对命令行有基本的了解。Rust 使 对您的编辑或工具或代码所在的位置没有特定要求,因此 如果您更喜欢使用集成开发环境 (IDE) 而不是 命令行,请随意使用您最喜欢的 IDE。现在许多 IDE 都有一些 Rust 支持程度;有关详细信息,请查看 IDE 的文档。锈蚀 团队一直专注于通过 .有关更多详细信息,请参阅附录 D。rust-analyzer
创建项目目录
首先,您将创建一个目录来存储 Rust 代码。这不重要 到你的代码所在的 Rust,但对于本书中的练习和项目, 我们建议在你的主目录中创建一个 projects 目录,并保留所有 你的项目在那里。
打开终端并输入以下命令以创建 projects 目录 以及 projects 目录中的 “Hello, world!” 项目的目录。
对于 Linux、macOS 和 Windows 上的 PowerShell,请输入以下内容:
$ mkdir ~/projects $ cd ~/projects $ mkdir hello_world $ cd hello_world
对于 Windows CMD,请输入以下内容:
> mkdir "%USERPROFILE%\projects" > cd /d "%USERPROFILE%\projects" > mkdir hello_world > cd hello_world
编写和运行 Rust 程序
接下来,创建一个新的源文件并将其命名为 main.rs。Rust 文件总是以 .rs 扩展名。如果您在文件名中使用了多个单词,则 惯例是使用下划线分隔它们。例如,使用 hello_world.rs 而不是 helloworld.rs。
现在打开你刚刚创建的 main.rs 文件,并输入示例 1-1 中的代码。
文件名: main.rs
fn main() { println!("Hello, world!"); }
示例 1-1:一个打印Hello, world!
保存文件并返回到 ~/projects/hello_world 目录中的终端窗口。在 Linux 或 macOS 上,输入以下内容 命令编译并运行文件:
$ rustc main.rs $ ./main Hello, world!
在 Windows 上,输入 command 而不是 :.\main.exe
./main
> rustc main.rs > .\main.exe Hello, world!
无论您的作系统如何,字符串都应打印为 终端。如果您没有看到此输出,请返回查看安装的“故障排除”部分 部分以获取帮助的方法。Hello, world!
如果打印出来了,恭喜你!您已经正式编写了 Rust 程序。这使您成为 Rust 程序员 — 欢迎!Hello, world!
Rust 程序剖析
让我们详细回顾一下这个 “Hello, world!” 程序。这是第一部分 谜题:
fn main() { }
这些行定义一个名为 .功能很特殊:它 始终是在每个可执行 Rust 程序中运行的第一个代码。在这里, 第一行声明一个名为 function 的函数,该函数没有参数并返回 无。如果有参数,它们将放在括号内。main
main
main
()
函数体包装在 .Rust 要求所有 函数体。将左大括号放在同一个 line 作为函数声明,并在两者之间添加一个空格。{}
注意:如果你想在 Rust 项目中坚持使用标准样式,你可以 使用名为 的自动格式化工具在 特定样式(详见附录 D)。Rust 团队包含了这个工具 使用标准的 Rust 发行版,按原样,所以它应该已经是 安装在您的计算机上!rustfmt
rustfmt
rustc
该函数的主体包含以下代码:main
println!("Hello, world!");
这行代码完成了这个小程序中的所有工作:它将文本打印到 屏幕。这里有四个重要的细节需要注意。
首先,Rust 风格是用四个空格缩进,而不是一个制表符。
其次,调用 Rust 宏。如果它调用了一个函数,则它 将输入为 (不带 )。我们将在 更多细节见第 19 章。现在,你只需要知道使用 a 意味着你调用的是宏而不是普通函数,并且宏 不要总是遵循与 Functions 相同的规则。println!
println
!
!
第三,你看到字符串。我们将此字符串作为参数传递 to ,并将字符串打印到屏幕上。"Hello, world!"
println!
第四,我们用分号 () 结束这一行,这表示这个 expression 已结束,下一个 expression 已准备好开始。大多数 Rust 代码行 以分号结尾。;
编译和运行是单独的步骤
您刚刚运行了一个新创建的程序,因此让我们检查 过程。
在运行 Rust 程序之前,您必须使用 Rust 编译器通过以下方式编译它 输入命令并向其传递源文件的名称,例如 这:rustc
$ rustc main.rs
如果你有 C 或 C++ 背景,你会注意到这类似于 或 。编译成功后,Rust 会输出一个二进制可执行文件。gcc
clang
在 Linux、macOS 和 Windows 上的 PowerShell 上,您可以通过以下方式查看可执行文件 在 shell 中输入命令:ls
$ ls main main.rs
在 Linux 和 macOS 上,您将看到两个文件。使用 Windows 上的 PowerShell,您将 看到的三个文件与使用 CMD 时看到的相同。使用 Windows 上的 CMD,您可以 将输入以下内容:
> dir /B %= the /B option says to only show the file names =% main.exe main.pdb main.rs
这将显示扩展名为 .rs 的源代码文件,即可执行文件 (在 Windows 上main.exe,但在所有其他平台上是 main),并且,当使用 Windows,一个包含扩展名为 .pdb 的调试信息的文件。 在此处,运行 main 或 main.exe 文件,如下所示:
$ ./main # or .\main.exe on Windows
如果您的 main.rs 是 “Hello, world!” 程序,则此行将打印到您的终端。Hello, world!
如果您更熟悉动态语言,例如 Ruby、Python 或 JavaScript,您可能不习惯编译和运行程序,因为 单独的步骤。Rust 是一种预先编译的语言,这意味着您可以 编译一个程序并将可执行文件提供给其他人,他们可以运行它 即使没有安装 Rust。如果您为某人提供 .rb、.py 或 .js 文件,他们需要具有 Ruby、Python 或 JavaScript 实现 安装(分别)。但是在这些语言中,您只需要一个命令来 编译并运行您的程序。一切都是语言设计的权衡。
对于简单的程序来说,只编译 是可以的,但作为你的项目 增长,您将需要管理所有选项并轻松共享您的 法典。接下来,我们将向您介绍 Cargo 工具,它将帮助您编写 真实世界的 Rust 程序。rustc
文章来源:
Rust 编程语言 -- Rust教程|Rust中文文档|Rust编程|Rust官方文档