使用Cargo入门rust语言

简介: rust语言是mozilla公司发布的一门系统级编程语言,据说目的是能够代替C语言。 没错,这个公司一直在搞操作系统,现在搞了一门写操作系统的语言。 这里主要说一下安装rust后怎么搞。

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里没有声明语句只有表达式,它的变量定义也使用模式匹配表达式而不是其他多数语言的声明语句。

目录
相关文章
|
3月前
|
Rust 安全 Java
探索Rust语言的并发编程模型
探索Rust语言的并发编程模型
|
3月前
|
Rust 安全 区块链
探索Rust语言:系统编程的新选择
【10月更文挑战第27天】Rust语言以其安全性、性能和并发性在系统编程领域受到广泛关注。本文介绍了Rust的核心特性,如内存安全、高性能和强大的并发模型,以及开发技巧和实用工具,展示了Rust如何改变系统编程的面貌,并展望了其在WebAssembly、区块链和嵌入式系统等领域的未来应用。
|
3月前
|
Rust 安全 编译器
编程语言新宠:Rust语言的特性、优势与实战入门
【10月更文挑战第26天】Rust语言诞生于2006年,由Mozilla公司的Graydon Hoare发起。作为一门系统编程语言,Rust专注于安全和高性能。通过所有权系统和生命周期管理,Rust在编译期就能消除内存泄漏等问题,适用于操作系统、嵌入式系统等高可靠性场景。
225 2
|
3月前
|
Rust 安全 Java
编程语言新宠:Rust语言的特性、优势与实战入门
【10月更文挑战第27天】Rust语言以其独特的特性和优势在编程领域迅速崛起。本文介绍Rust的核心特性,如所有权系统和强大的并发处理能力,以及其性能和安全性优势。通过实战示例,如“Hello, World!”和线程编程,帮助读者快速入门Rust。
223 1
|
3月前
|
Rust 安全
深入理解Rust语言的所有权系统
深入理解Rust语言的所有权系统
95 0
|
3月前
|
Rust 安全 前端开发
探索Rust语言的异步编程模型
探索Rust语言的异步编程模型
|
3月前
|
Rust 安全 云计算
Rust语言入门:安全性与并发性的完美结合
【10月更文挑战第25天】Rust 是一种系统级编程语言,以其独特的安全性和并发性保障而著称。它提供了与 C 和 C++ 相当的性能,同时确保内存安全,避免了常见的安全问题。Rust 的所有权系统通过编译时检查保证内存安全,其零成本抽象设计使得抽象不会带来额外的性能开销。Rust 还提供了强大的并发编程工具,如线程、消息传递和原子操作,确保了数据竞争的编译时检测。这些特性使 Rust 成为编写高效、安全并发代码的理想选择。
72 0
|
4月前
|
Rust 安全 网络安全
在 Rust 语言中,寻找企业上网行为管理软件的突破
在数字化企业环境中,上网行为管理软件对于保障网络安全和提升工作效率至关重要。Rust 语言凭借其安全性、高性能和并发性,为开发此类软件提供了新机遇。本文通过几个 Rust 代码示例,展示了如何实现网址检查、访问频率统计及访问控制等功能,旨在探索 Rust 在企业上网行为管理中的应用潜力。
65 0
|
5月前
|
Rust 编译器 测试技术
30天拿下Rust之深入Cargo
30天拿下Rust之深入Cargo
73 0
|
6月前
|
Rust 安全 程序员
Rust 语言的防错机制太惊人了!安全编码从此不再是难题,快来一探究竟!
【8月更文挑战第31天】《安全编码原则:Rust 语言中的防错机制》探讨了代码安全的重要性,并详细介绍了Rust语言如何通过内存安全模型、所有权与借用规则等特性,在编译阶段检测并阻止潜在错误,如缓冲区溢出和悬空指针。文章还讨论了类型安全、边界检查等其他安全特性,并提出了遵循不可变引用、避免裸指针及充分测试等实用编码原则,以进一步提升代码质量和安全性。随着Rust在软件开发中的应用日益广泛,掌握其安全编码原则变得尤为重要。
103 0