Rust
语言的介绍、特性什么的都不说了,若有须要,请自行了解。这里咱们直接进去正题。html
mac或linux系统,在命令行安装linux
curl https://sh.rustup.rs -sSf | sh 安装过程当中会询问安装方式,我直接选择的第一种默认方式,第二种是自定义,第三种是取消安装
而后会发如今本身家目录下有一个 .cargo
的隐藏文件夹,里面有四个文件 bin env git registry
。
1.env
文件设置了 Rust
的环境变量,
2.bin
文件夹下是相关的工具 cargo cargo-miri rust-gdb rustdoc cargo-clippy clippy-driver rust-lldb rustfmt cargo-fmt rls rustc rustup
。git
更新到最新版本(rust会6个星期更新一个版本)windows
rustup upddate
查看版本curl
rustc --version cargo --version
卸载函数
rustup self uninstall
在 Windows
系统上就不说了,直接下载 Rust安装包rustup-init.exe 安装便可。工具
tips: 若是想查看文档,可使用以下命令:学习
rustup doc
学习语言的老规矩,二话很少说,先写一个Hello World
。
新建一个 hello.rs
文件,写入以下内容:ui
fn main() { println!("Hello, world!"); }
而后编译运行便可url
rustc hello.rs // 编译,会编译出一个名为hello的可执行文件 ./hello // 运行,会把"Hello, world!"打印出来
作一个简单的说明,fn
是方法声明的关键字,main
是主函数的名字,rust
程序的入口,即 rust
程序是从 main
方法开始运行的。方法名字后面一般会跟着一对小括号 ()
,而后是大括号 {}
包裹着函数体(方法的参数和返回值暂且不说)。本文的函数体就是打印 Hello, World!
字符串,而 println!
则是 rust
中的宏,宏指令后文介绍,如今只须要知道宏指令后面须要紧跟着感叹号 !
就能够了。
Cargo
做为 Rust
语言编译代码和包的管理工具。大多数 Rust
程序都使用这个工具来管理他们的 Rust
项目,由于 Cargo
帮咱们作了大量的工做,好比:编译代码、下载代码须要的依赖,而且编译这些依赖。
简单的 Rust
项目不须要任何依赖,好比咱们前面写的那个。因此咱们能够只使用 Cargo
编译代码部分的功能,可是当你写复杂项目的时候,就能够在项目中使用 Cargo
来更加容易地添加依赖。
下面咱们正式学习这个工具,在上文安装 Rust
的时候就已经安装好了这个工具,在此,咱们能够查看一下它的版本号:
cargo --version
使用 Cargo
建立一个新的项目,项目名叫 hello_cargo
cargo new hello_cargo && cd hello_cargo
这条命令建立了一个 Cargo.toml
文件和一个 src
文件夹(git相关的就先不说了),Cargo.toml
文件以下:
[package] name = "hello_cargo" version = "0.1.0" authors = ["shanpengfei <shanpengfei7@163.com>"] edition = "2018" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies]
[package]
下的四行是项目的基础信息,Cargo
会自动获取项目的名字、版本、做者和 rust
的发行版本。[dependencies]
则是存放项目须要的依赖。Rust
的包是映射成 crates
的,而当前项目不须要任何其它依赖,后文再仔细介绍。src
文件夹下则是一个 main.rs
文件,里面存放的代码是
fn main() { println!("Hello, world!"); }
使用 Cargo
编译项目
cargo build
这里会生成一个 Cargo.lock
文件和一个 target
文件夹。Cargo.lock
文件用于锁定项目依赖的版本,而 target
文件夹则是编译生成的结果。而后运行项目项目
./target/debug/hello_cargo Hello, world!
其实上面两条命令可使用 run
命令代替
cargo run Finished dev [unoptimized + debuginfo] target(s) in 0.01s Running `target/debug/hello_cargo` Hello, world!
在写代码的时候,咱们一般不须要执行代码,只须要确保代码是可编译的,此时可使用 check
命令来检查:
cargo check Checking hello_cargo v0.1.0 (/Users/shanpengfei/work/rust-work-space/study/hello_cargo) Finished dev [unoptimized + debuginfo] target(s) in 0.12s
这个命令比 build
命令的速度快,只有当项目须要运行的时候才使用 build
命令。
最基础的入门级内容先介绍这么多,下一篇文章使用 rust
作一个小游戏玩一玩。
欢迎阅读单鹏飞的学习笔记