Structs(结构体) 接下来开始第二章的学习,这一章我们准备用一个工单案例来展开,首先是关于工单的定义,它涉及到标题,描述信息和状态 我们可以使用String类型来表示他们(String类型是一个Rust标准库表示UTF-8编码文本的数据类型) 将这些信息组合到一起,表示一个单独的实体,就可以用
强制类型转换 前面提到过很多次,rust不支持隐式类型转换,但是rust肯定支持显式类型转换,这一节就是学习一下rust当中显式类型转换的规则 as关键字 我们可以使用as关键字将一个类型转换为另一个类型,比如: let a: u32 = 10; // Cast `a` into the `u64
饱和算术 可以通过saturating_方法实现饱和算术 这同样也是处理溢出的一种特殊的方式 相比于warpping around,saturaing arithmetic在溢出时会返回该整型类型的最大值或最小值作为结果,比如 let x = 255u8; let y = 1u8; let sum
溢出 rust中的整型有范围,这从一开始就清楚的 比如u8类型的范围就是0~255,那么如果运算时超出了这个范围,就会发生溢出 溢出在rust中是一个error,如果在C/C++等语言当中往往会被直接忽略掉,但是rust很安全,他不允许溢出随便发生 如果运算的结果 > 类型::MAX,则称为上
for循环 while,loop循环等,他们的条件表达式的模式匹配比较单一,Rust提供的的for循环,有更强大的模式匹配功能,它可以使用更简单的方式去遍历一个数字序列 for循环也可以轻松的遍历迭代器,一般的语法结构如下: for <element> in <iterator&g
循环语句 引入 while循环 在rust中,循环语句的格式和其他语言其实相差不大,格式如下 while <条件表达式>{ } 例如 let sum = 0; let i = 1; // "当i<=5时" while i <= 5 { //
阶乘 这一节是要完成一个阶乘的函数,定义一个名为factorial的函数,传递一个类型为u32的变量n,返回一个类型为u32的变量,定义好这个签名后就可以提交了 题目如下 // Define a function named `factorial` that, given a non-negativ
Panics(恐慌) Panics是 Rust 发出 程序出了问题,无法继续运行 的信号的方式,是一种无法恢复的错误。 Panic!宏 Panic可以手动的触发,通过调用Panic!宏即可 panic!("This is a panic!"); 运行结果如下 这是程序的运行结
if和else if语句 if关键字后面跟着一个代码块,只有当if后面的条件表达式的值为true的时候,代码块才会执行 if <条件表达式> { //代码块 } else语句 else语句可以跟在if语句后面,当if后面的条件表达式的值为false的时候,代码块才会执行 let nu
变量 声明变量 在Rust中,使用 let 关键字可以声明变量,例如: let x = 42; let只是指明了这是一个变量,有点好奇为什么用let。 其实熟悉JavaScript的话应该知道,let来自于JavaScript声明变量的关键字(它是ES6(ECMAScript 2015)引入的一种