Rust学习抽空学习系列(一)
1、简单创建Hello World项目
环境啥的先配置完,按照官网的教程没几步,主要就是
cargo
和rustc
http://rust.p2hp.com/tools/install
首先,初始化一个项目结构,用到cargo init
命令,在创建好的目录里初始化项目结构
这个命令会在当前目录进行项目结构初始化,将当前目录作为项目容器
当然,如果还没有创建项目的目录的话可以直接使用cargo new
命令完全创建一个新的项目
shell
cargo init
在当前目录结构初始化完毕后,生成的也就以下这几个文件:
src/
:源代码目录main.rs
:预生成的入口文件,里面有个main()
方法,可以输出"Hello, world!"Cargo.toml
:项目构建相关的配置文件,项目复杂的时候用处很大
点击"运行",执行一下main.rs
文件,会发现目录里又会多出几个文件
这些都是程序运行才生成的文件(target\
目录以及Cargo.lock
)
程序运行完毕,输出"Hello, world!",这便是第一个程序啦~~
程序运行的时候,会生成可执行文件,放到项目的target\debug\
目录下
直接运行rust-app-2024
同样可以得到刚刚的输出结果
2、聊一聊Hello World内容
rust
fn main() {
println!("Hello, world!");
}
以上便是这个简单的程序的全部代码内容,将其拆解一下:
main
函数- 宏
- 字符串参数
- 分号
main函数
首先,如下结构在Rust中表示一个函数,并且这还是一个特殊的函数------main
函数
这个函数在可执行的Rust程序中总是最先被执行的 ,并且没有参数和返回值
{}
之间便是main
函数具体执行的业务逻辑,在这里便是输出"Hello, world!"
rust
fn main() {
}
宏
println!("Hello, world!");
这行作为具体业务的代码本身是一个宏 ,宏是以!
结尾的,比如目前的println!
,而普通的函数是没有的,但这目前并不会影响我们的理解
参数
这里的参数是指宏调用时传入的参数,即"Hello, world!"
,这显然是一个字符串,或者更确切一点应该是字符串字面量,它告诉宏需要打印什么内容
分号
Rust使用英文分号;
表示一条语句的完结,这和许多其他编程语言一样
这便是一个平平无奇的Rust的Hello World,构成简单,除了宏(也没啥理解障碍,暂且当成函数看吧),好像并没有什么新东西出现,甚至都不需要导入包,挺简洁的~~,第一印象不错呢
https://kaisery.github.io/trpl-zh-cn/ch01-02-hello-world.html