Rust语言基础 上
配套视频教程:\ Bilibili:https://www.bilibili.com/video/BV1zE42157xW/?share_source=copy_web&vd_source=c147db41bce0140aa28781d353032bab\ Youtube:https://www.youtube.com/watch?v=Ap64WGDAIlg\ 欢迎添加我的联系方式:Rico_Ruilabs
详解移步:https://tourofrust.com/00_zh-cn.html
变量
fn main() {
// rust 推断出x的类型
let x = 13;
println!("{}", x);
// rust也可以显式声明类型
let x: f64 = 3.14159;
println!("{}", x);
// rust 也支持先声明后初始化,但很少这样做
let x;
x = 0;
println!("{}", x);
}
默认不可变
fn main() {
let mut x = 42;
println!("{}", x);
x = 13;
println!("{}", x);
}
变量类型
bool
表示 true 或 falseu8
u32
u64
u128
表示正整数i8
i32
i64
i128
表示正负整数f32
f64
(value, value, ...)
用于在栈上传递固定序列的值str
(string slice) - 在运行时已知长度的文本fn main() {
let x = 12; // 默认情况下,这是i32
let a = 12u8;
let b = 4.3; // 默认情况下,这是f64
let c = 4.3f32;
let bv = true;
let t = (13, false);
let string = String::from("hello world!"); // 字符串
let stringSlice = &string[0..=4]; // 取从0到第4位 生成一个字符切片
println!(
"{} {} {} {} {} {} {} {} {}",
x, a, b, c, bv, t.0, t.1, string,stringSlice
);
}
常量
const PI: f32 = 3.14159;
数组
数组 的数据类型是 [T;N]
,其中 T 是元素的类型,N 是编译时已知的固定长度。
fn main() {
let nums: [i32; 3] = [1, 2, 3];
println!("{:?}", nums);
println!("{}", nums[1]);
}
函数
fn add(x: i32, y: i32) -> i32 {
return x + y;
}
fn main() {
println!("{}", add(42, 13));
}
配合元组返回多个值
fn swap(x: i32, y: i32) -> (i32, i32) {
return (y, x);
}
fn main() {
// 返回一个元组
let result = swap(123, 321);
println!("{} {}", result.0, result.1);
// 将元组解构为两个变量
let (a, b) = swap(result.0, result.1);
println!("{} {}", a, b);
}
也可返回空值(空元组)
fn make_nothing() -> () {
return ();
}
fn make_nothing2() {
// 如果没有指定返回值,这个函数将会返回 ()
}
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!