🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] ### hello world hellow world 示例程序 `main.rs`: ``` fn main() { println!("hello world"); } ``` #### hello world细节 - Rust缩进风格是使用4个空格,不是制表符(`tab`)。 - `println!`调用了一个 Rust 宏(macro)。如果是调用函数,则应输入`println`(没有`!`)。当看到符号`!`的时候,就意味着调用的是宏而不是普通函数。 - `"Hello, world!"`是一个字符串。我们把这个字符串作为一个参数传递给`println!`,字符串将被打印到屏幕上。 - 该行以分号结尾(`;`),这代表一个表达式的结束和下一个表达式的开始。大部分 Rust 代码行以分号结尾。 #### 编译 执行命令: ``` $ rustc main.rs //运行生成的二进制文件 `main` $ ./main //屏幕上打印 hello world ``` ***** ### hello_cargo #### 示例 创建一个hello_cargo ``` $ cargo new hello_cargo cd hello_cargo //可以看到配置文件Cargo.toml跟源码目录src //src目录下有一个main.rs,里面是hello_world程序 ``` 编译&&执行 ``` //debug $ cargo build //release 编译 $ cargo build relealse //执行 $ cargo run ``` Cargo 还提供了一个叫`cargo check`的命令。该命令快速检查代码确保其可以编译,但并不产生可执行文件: ``` $ cargo check Checking hello\_cargo v0.1.0 (/home/rust/hello\_cargo) Finished dev \[unoptimized + debuginfo\] target(s) in 0.26s ``` #### 问题 运行在docker首个问题 [Cannot create new Rust project with Docker: “could not determine the current user”](https://stackoverflow.com/questions/51137904/cannot-create-new-rust-project-with-docker-could-not-determine-the-current-use) 解决方式 带上 -m USER=$USER: ``` $ docker run -it --rm -e USER=$USER -v "$PWD":/home/rust rust:init /bin/bash $ docker run -it -e USER=$USER -v /sources/rust/:/home/project/rust --privileged=true --name rust_test rust:v1 /bin/bash ```