Rust编程语言Helloworld (二)

Hello,World

你已经安装了Rust,现在让我们写出第一个Rust程序。当学习一个新的语言时,在屏幕上打印Hello,Worldr!的一小段程序是一个传统。所以让我们开始吧。

注意:本书假序曲你基本熟悉命令行。Rust并不指定需要特定的编辑工具编写代码,所以如果你喜欢使用集成IDE代替命令行,你可使自由使用你最爱的IDE。一些IDE开始支持Rust,查看IDE文档获取详细信息。Rust团队已经开始构建rust-analyzer去支持Rust。

创建一个项目目录

首先创建一个目录用来存储你的Rust代码。无论你的代码在哪里Rust都没问题。但是本练习和本书的项目,我们建议在你的用户home目录创建projects目录并且将项目放在哪里。

打开终端且输入下面命令创建一个项目目录,同时在~/projects创建helloworld项目路径.

在linux,MacOS,和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文件并输入以下代码

文件名:main.rs

fn main() {
    println!("Hello, world!");
}

保存文件,回到终端窗口到~/projects/hello_world目录。在linux 和macOS,输入以下命令编译和运行文件:

$ rustc main.rs
$ ./main
Hello, world!

在Windows上,输入命令.\main.exe替代./main

> rustc main.rs
> .\main.exe
Hello, world!

与你操作系统无关,Hello,world!字符串将会打印到终端上。如果你不能看到输出,参考 安装小节“Troubleshooting” 部分得到帮助。

如果Hello,world!打印出来,㳟喜你,你已 经正式 写出了一个Rust程序。这让你成为了Rust程序员——欢迎。

Rust程序解剖

让我们申视一下hello world程序细节。首先是下面的困惑的代码

fn main() {

}

此行定义一个叫main的函数。main函数是特殊函数:他总是在每个可执行Rust程序中首先执行。因此,第一个声明一个名字叫main的函数,main函数没有参数,没有返回值。如果有参数,他们

写在括号里

函数体用{}括起来,Rust要求成对的大括号包信函数体。将半个大括号和函数声名放在一行是个好方式,并在括号和函数声名间加上空格。

注意:如果您希望在Rust项目中坚持标准样式,可以使用名为rustfmt的自动格式化工具以特定样式格式化代码(更多信息请参见附录D中的rustfmt)。Rust团队已经在标准Rust发行版中包含了这个工具,比如rustc,所以它应该已经安装在您的计算机上了!

main函数体中包含以下代码

println!("Hello, world!");

这行完成了这个小程序的所有工作:它将文本打印到屏幕上。这里有四个重要的细节需要注意。

首先,Rust样式是用四个空格缩进,而不是制表符。

第二,打印!调用Rust宏。如果它调用了一个函数,它将被输入为println(没有)。我们将在第19章中更详细地讨论Rust宏!这意味着您调用的是宏而不是普通函数,并且宏并不总是遵循与函数相同的规则。

第三,你看到“你好,世界!”一串我们将此字符串作为参数传递给println!,并且该字符串被打印到屏幕上。

第四,我们以分号(;)结尾,这表示该表达式已结束,下一个表达式已准备好开始。Rust代码的大多数行以分号结尾。

编译和运行是分开的步骤

您刚刚运行了一个新创建的程序,所以让我们来检查过程中的每个步骤。

在运行Rust程序之前,必须通过输入rustc命令并将源文件的名称传递给它,使用Rust编译器对其进行编译,如下所示:

$ rustc main.rs

如果您有C或C++背景,您会注意到这类似于gcc或clang。编译成功后,Rust输出一个二进制可执行文件。

在Linux、macOS和Windows上的PowerShell上,可以通过在shell中输入ls命令来查看可执行文件。在Linux和macOS上,您将看到两个文件。使用Windows上的PowerShell,您将看到与使用CMD相同的三个文件。

$ ls

main main.rs

在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是你的“你好,世界!”程序,这行打印你好,世界!到您的终端。

如果您更熟悉动态语言,如Ruby、Python或JavaScript,您可能不习惯将程序编译和运行作为单独的步骤。Rust是一种提前编译的语言,这意味着你可以编译一个程序并将可执行文件交给其他人,他们甚至可以在没有安装Rust的情况下运行它。如果给某人提供.rb、.py或.js文件,他们需要分别安装Ruby、Python或JavaScript实现。但在这些语言中,您只需要一个命令来编译和运行程序。一切都是语言设计的权衡。

对于简单的程序来说,只需使用rustc进行编译就可以了,但随着项目的增长,您将需要管理所有选项,并使共享代码变得容易。接下来,我们将向您介绍Cargo工具,它将帮助您编写真实世界的Rust程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值