Rust HelloWorld
本章节我们通过一个小小的 Hello World
程序来看看和解释 Rust 最小程序的构成。
-
首先创建一个
HelloWorld
的目录并在 命令行/终端 中使用cd
命令并进入到HelloWorld
目录C:\Users\Admin>mkdir HelloWorld C:\Users\Admin>cd HelloWorld C:\Users\Admin\HelloWorld>
-
使用你趁手的编辑器创建一个文件
Hello.rs
,比如我使用Visual Studo Code
作为代码编辑器C:\Users\Admin\HelloWorld-App>code Hello.rs
Rust 语言的源代码文件以
.rs
作为文件扩展名。上面的命令会在当前目录下创建一个
Hello.rs
的空文件,并在Visual Studo Code
中打开。 -
在
Hello.rs
文件中输入以下代码,然后保存。fn main(){ println!("Hello World"); println!("你好,简单教程"); }
上面这段代码定义了一个名为
main
的函数。Rust 语言使用fn
关键字定义函数。main()
函数是一个预定义函数,充当 Rust 程序的入口点,类似于 C 语言 中的main()
函数。接下来的
println!()
是 Rust 语言中的一个 预定义的宏。这个println!()
用于将传递给它的参数输出到 标准输出。Rust 语言中的 宏 都会以 感叹号 (
!
) 结尾。也就是说,你以后看到以!
结尾的类似函数调用,都是 宏调用。 -
使用
rustc
编译工具编译我们刚刚的Hello.rs
C:\Users\Admin\HelloWorld>rustc Hello.rs
如果编译成功,
rustc
命令会生成一个跟 源代码文件 同名的.exe
二进制可执行文件。比如上面的命令会生成一个Hello.exe
文件。C:\Users\Admin\HelloWorld>dir //列出当前目录下的文件 Hello.exe Hello.pdb Hello.rs
-
为了检查编译是否成功,你可以双击 Hello.exe 查看运行结果。
什么是宏 ?
Rust 提供了一个功能非常强大的 宏 体系,通过这些 宏,我们可以很方便的进行 元编程。
Rust 中的 宏 有点类似于 函数。它们跟函数还是有很大的区别的:
- 宏以感叹号 (
!
) 结尾,正如上面我们所见到的那样。 - 宏在编译时并不会生成一个 函数调用,而是直接对 宏 的源代码进行展开。这个和 C 语言 中宏是一样的。
从某些方面说,我们可以将 宏 理解为 函数的加强版
范例
下面的三行代码,演示了宏的使用
println!(); // 输出一个空行 println!("hello "); // 新的一行输出 hello println!("format {} arguments", "some"); // 新的一行输出 format some arguments
Rust 语言中的注释
注释 有助于改善程序代码的可读性。注释类似于我们读书时做的 评注。
程序中的 注释 一般用于标注程序的一些基本信息,对一些难以理解的代码、类、函数或返回值进行说明等。
Rust 编译器会在编译程序的时候 主动忽略 代码中的注释,也就是说,注释不会影响代码的编译和执行。
Rust 语言支持以下两种注释,也是很多语言都有的默认注释方法
-
单行注释 / 行内注释
单行注释以
//
开头,之后说有的文字包括代码都属于注释。也就是说,以
//
开头,直到行尾的所有文字都属于注释,包括中间的任何//
例如
// 这个单行注释单独一行 1+1; // 这是注释,但前面的 1+1; 是正常的代码 // 1+1; // 这个整行也是注释,// 可以任意多个
-
多行注释 / 块注释
多行注释 就是可以跨越多行,当然也可以只有一行。
多行注释以
/*
开头,以*/
结尾。块注释中可以有任意数量的
/*
,但是,一旦遇到*/
则表示 块注释结束例如下面的块注释
/* 这是块注释 */ /* 这 是 多行 注释 */ /* /* /* 这也是多行注释 */