rust语言是mozilla公司发布的一门系统级编程语言,据说目的是能够代替C语言。
没错,这个公司一直在搞操作系统,现在搞了一门写操作系统的语言。
这里主要说一下安装rust后怎么搞。我的是win8系统,用的是gitbash命令行。
打开命令行,首先看一下编译器是否正常工作:编译器肯定可以正常工作,主要看你加环境变量了没。
$ rustc --version rustc 1.6.0 (c30b771ad 2016-01-19)
如果你正常安装并且勾选了添加环境变量,但是没有返回版本信息反而是其他一堆鬼,你可以去看一下PATH里面有没有rust的bin目录。如果你输出了PATH一看,你娘,怎么没有!然后打算自己去添加,结果编辑PATH的时候到最后一看:你娘,这明明有的啊!那么请重启电脑。
接下来我们尝试写hello world。
rust自带了一个项目管理工具,叫Cargo。不知道这个单词的可以去查一下,算了我还是告诉你吧,它本意是“货物,负荷”的意思。我们需要用到这个东西。
第一步新建工程,就叫hello_world吧,所以肯定是先新建hello_world目录:
mkdir hello_world
否则还有一种方法,更好的方法:
$ cargo new hello_world --bin
我们使用了cargo工具,它自动创建了该目录。
只是这样吗?当然不是,否则谁还他妈的写这么大一串命令还不如mkdir呢。
进入工程目录看一下:
$ ls Cargo.toml src
有一个文件和一个文件夹。文件夹一看就是放源代码的,那么这个文件是干啥的呢?
这是个配置文件,所有要用cargo管理的必须有这个文件,而且必须是这个名字,而且首字母必须大写。
打开看一下说的啥:
$ cat Cargo.toml [package] name = "hello_world" version = "0.1.0" authors = ["赵日天 <叶良辰@wangsicong.com>"] [dependencies]
主要是包信息,工程名称、版本和作者。下面那个依赖信息是空的,所以可以删掉。
然后可以写代码了。
进入src目录,看下它自动建的源代码:
$ cat main.rs fn main() { println!("Hello, world!"); }
是一个显而易见的输出hello world程序。
怎么运行呢?(纳尼,代码写好了?我一个字都没写啊!稍等一下)
到有Cargo.toml文件的目录下执行命令
cargo build
cargo就开始编译代码了,然后会生成一个target目录,里面有一个debug目录:
$ pwd /E/***/hello_world/target/debug $ ls build deps examples hello_world.exe native
执行这个hello_world.exe就输出我们期望的文字。不过我们并不直接执行,有一个参数可以合并build过程和运行过程:在项目目录下执行命令cargo run
$ cargo run Hello, world!
现在需要自己写代码了:请把刚才cargo自动创建的过程改成手动的,并实现输出hello world。
需要注意的是:fn main是一个方法,但是println!不是一个方法,而是一个宏,宏是以叹号结尾的。
rust里没有声明语句只有表达式,它的变量定义也使用模式匹配表达式而不是其他多数语言的声明语句。