万事开头难,上一篇我们已经做完了繁琐的环境配置,终于可以开写Rust代码了。遵循“least surprise”的原则,我们也按照惯例从Hello World开始。

打开命令行,输入下面的命令,开始编辑我们的第一个程序:
mkdir rust-learning
cd rust-learning
code hello-world.rs
最后一个命令在VS Code里新建了一个hello-world.rs文件(rs就是Rust源代码的扩展名)。程序只有三行:
fn main() {
println!("Hello World!");
}
- fn是定义函数的关键字。
- 跟很多其他语言类似,main是主程序入口函数名,后面的()表示函数没有参数和返回值。
- 放在{}之间的是main的函数体,也就是程序的执行过程。这里我们只有一个动作println!——print line,打印一行内容,即引号里的Hello World!。
println后面的感叹号有什么特别呢?在Rust里,它是调用宏定义的语法。有关宏的事情,我们等后面再展开,现在只要记住println!是打印语句就可以了。
另一个有意思的问题是,这个宏从哪里来的?为什么不需要在使用之前引入一下什么的,直接就可以用?
答案也不神秘。Rust有一个std(标准)库,包含了一些核心的类型、模块和宏。其中的类型(包括bool、char等)和宏(包括println!、assert!等)是不需要引入直接可以使用的。
说了这么多,我们还没有完成Hello World。保存文件,回到命令行编译:
rustc hello-world.rs
如果你的命令行提示没有找到rustc命令,可以确认一下上一篇rustup安装步骤是否成功,并且在安装完以后重新启动了虚拟机。
编译成功以后当前目录会出现一个名叫hello-world的可执行程序。

可以执行了:
./hello-world

完美!
你的Hello World也成功运行了吗?下一节开始我们一起学习基本数据类型和程序流程控制。
关注红小豆,一起学习Rust开发。欢迎点赞,转发,收藏!