当前位置: 首页>编程语言>正文

rustdesk 有那些命令 rust常用指令

Rust常用语法

Rust变量及可变性

Rust变量

Rust变量默认的不可变性
let x = 5;
x = 6;
这样是无法将变量变值的,因为这个变量是默认具有不可变性。
let mut x = 5;
x = 6;
可以使用mut对不可变性进行修改。
Rust中常量的表达
fn main() {
const THREE_HOURS_IN_SECONDS: u32 = 60 * 60 * 3;
}
常量要注意的是只能具有常量表达式,而不能作为变量运行结果。
常量在RUST中只能使用大写字母+“_”的方式出现
将整个程序中使用的硬编码值命名为常量,有助于向将来的代码维护者传递该值的含义。如果将来需要更新硬编码的值,代码中只有一个地方需要更改,这也会有所帮助

Rust变量可变性

Rust中覆盖操作

使用let命令可以对rust中的参数进行覆盖操作,

let x = 3;
let x = x+1;
{
	let x=x*2;//x=8
	println!("x={x}");//x=8
}
println!("x={x}");//x=4
let定义的变量同样具有作用域。
let spaces = "   ";
let spaces = spaces.len();

let同时可以对不同类型的变量使用同一个名称,而mut则不可以。

fn main() {
    let mut spaces = "   ";
    spaces = spaces.len();
}
$ cargo run
   Compiling variables v0.1.0 (file:///projects/variables)
error[E0308]: mismatched types
 --> src/main.rs:3:14
  |
2 |     let mut spaces = "   ";
  |                      ----- expected due to this value
3 |     spaces = spaces.len();
  |              ^^^^^^^^^^^^ expected `&str`, found `usize`

For more information about this error, try `rustc --explain E0308`.
error: could not compile `variables` due to previous error

Rust数据类型

Rust是一种静态类型语言,所有元素在编译之前都必须知道它的具体确切类型。

Rust标量类型
整型

整型变量默认是i32格式

整型变量分为有符号(signed)和无符号整形变量(unsigned),有符号变量存放形式为补码。

rustdesk 有那些命令 rust常用指令,rustdesk 有那些命令 rust常用指令_后端,第1张

每个有符号类型规定的数字范围是 -(2n - 1) ~ 2n - 1 - 1,其中 n 是该定义形式的位长度。所以 i8 可存储数字范围是 -(27) ~ 27 - 1,即 -128 ~ 127。无符号类型可以存储的数字范围是 0 ~ 2n - 1,所以 u8 能够存储的数字为 0 ~ 28 - 1,即 0 ~ 255。
isizeusize 类型取决于程序运行的计算机体系结构,在表中表示为“arch”:若使用 64 位架构系统则为 64 位,若使用 32 位架构系统则为 32 位。

isize:指针大小的有符号整数类型
usize:指针大小的无符号整数类型

你可按表中所示的任意形式来编写整型的字面量。注意,可能属于多种数字类型的数字字面量允许使用类型后缀来指定类型,例如 57u8。数字字面量还可以使用 _ 作为可视分隔符以方便读数,如 1_000,此值和 1000 相同。

rustdesk 有那些命令 rust常用指令,rustdesk 有那些命令 rust常用指令_rust_02,第2张

  • Rust中的整数溢出后,会使用panic来表示程序错误退出。
  • 而在rust使用 --release进行发布时,会优化代码,将其中的错误数值:如256–>0,257–>1,以此类推。
    这一部分还没有了解清楚:
    要显式处理溢出的可能性,可以使用标准库针对原始数字类型提供的以下一系列方法:
  • 使用 wrapping_* 方法在所有模式下进行包裹,例如 wrapping_add
  • 如果使用 checked_* 方法时发生溢出,则返回 None 值
  • 使用 overflowing_* 方法返回该值和一个指示是否存在溢出的布尔值
  • 使用 saturating_* 方法使值达到最小值或最大值
浮点型

浮点型有两种,一种是f32(单精度浮点型),一种是f64(双精度浮点型),默认为f64,因为两种在cpu中运行速度相同。

fn main() {
    let x = 2.0; // f64

    let y: f32 = 3.0; // f32
}
数值运算

数值运算中需要注意的是:除法会向下取整

fn main() {
    // addition
    let sum = 5 + 10;

    // subtraction
    let difference = 95.5 - 4.3;

    // multiplication
    let product = 4 * 30;

    // division
    let quotient = 56.7 / 32.2;
    let floored = 2 / 3; // Results in 0

    // remainder
    let remainder = 43 % 5;
}
布尔类型

rust中的布尔类型使用bool定义

fn main() {
    let t = true;

    let f: bool = false; // with explicit type annotation
}
字符类型

Rust 的字符类型大小为 4 个字节,表示的是一个 Unicode 标量值,这意味着它可以表示的远远不止是 ASCII。

fn main() {
    let c = 'z';
    let z = 'ℤ';
    let heart_eyed_cat = '

https://www.xamrdz.com/lan/5uf1963206.html

相关文章: