内容简介:if和其他的语言类似
rust名词和cargo
-
rust中的名词
- 代码包:crates
- 原始标识符: 没理解
-
rust中宏和函数的区别?
- rust的宏和函数调用时候形式的区别,宏带!而函数调用不带;
-
rust中的cargo
- cargo new 项目名:创建新的项目,项目名成小写下划线链接
- cargo build:构建项目,生成编译后的可执行文件,用于开发
- cargo run:编译和运行项目
- cargo check:确保项目可以编译
- cargo build --release:优化编译项目,用于测试
rust中的基础知识
变量
- Rust 代码中的函数和变量名使用 snake case 规范风格。
- 变量默认不可变
- 在变量前加上mut标识,标识可变变量
- 变量和常量的区别,变量使用let修饰,常量使用const,并且不能使用mut修饰,常量不能是运行时计算出来的值
- 隐藏 :隐藏是多次使用let修饰同一个名字的变量,后面的变量会覆盖之前的变量;隐藏可以改变之前变量的类型,mut则不可以。(关注一下垃圾回收对覆盖的处理)
基本类型
整型标量
长度 | 有符号 | 无符号 |
---|---|---|
8-bit | i8 | u8 |
16-bit | i16 | u16 |
32-bit | i32 | u32 |
64-bit | i64 | u64 |
arch | isize | usize |
其他标量
长度 | 类型 | 描述 |
---|---|---|
32-bit | f32 | 单精度浮点型 |
64-bit | f64 | 双精度浮点型 |
32-bit | char | 字符型 |
8-bit | bool | 布尔型 |
复合类型
- 元组:类型可以不同,解构访问或者点访问
- 数组:类型相,长度固定,栈上分配
函数
函数定义
//fn+函数名+(参数)+ -> + 返回值类型 + {函数体} fn function_name (parameters) -> type_of_return { body; }
函数签名中,必须声明每个参数的类型;返回值可以有多个,使用元组;
函数调用
//函数名+() function_name ();
控制流
if和其他的语言类似
循环:
loop + break
fn main() { let mut counter = 0; let result = loop { counter += 1; if counter == 10 { break counter * 2; } }; assert_eq!(result, 20); }
for
fn main() { let a = [10, 20, 30, 40, 50]; for element in a.iter() { println!("the value is: {}", element); } }
while
fn main() { let a = [10, 20, 30, 40, 50]; let mut index = 0; while index < 5 { println!("the value is: {}", a[index]); index = index + 1; } }
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。