RUST语法

学前

项目构建

rust提供一个项目构建工具cargo, 学习语言前先熟悉下这个工具。

cargo new hello_world --bin '新建项目'
cd hello_world '进入项目文件目录'
cargo run '编译运行当前项目'

语法

熟悉rust的语法结构,能达到独立观想github上其他人写的rust程序。

1.变量

使用 let 来声明变量,并且支持多个变量同时赋值。

let (x, y) = (1, 2); // 多个常量在同一行进行赋值
let x: i32 = 5; // rust的带类型常量
let mut x = 10; // 声明一个变量

fn array(){ // 数组
    println!("测试数组");
    let a = [0,1,2,3,4,5];
    let mid = &a[1..4];
    let com = &a[..];
    for var in mid {
        print!("{0}|", var);
    }
    println!("抽取部分");
    for var in com {
        print!("{0}|", var);
    }
    println!("抽取全部");
}
2.函数
  • fn声明函数
  • 通过->指定返回值类型
  • ! 声明函数决不返回值
// 参数传递
fn argmust(x: i32, name: &str) -> i32{
    println!("测试参数传递");
    println!("name = {0}, x = {1}", name, x);
    return x + 1;
}

fn diverges() -> ! {//  `!`决不返回
  panic!("this is never return !");
}
3.类型、数组
  • booleans 布尔类型
let x = true;
let y: bool = false;
  • char 字节类型
let x = 'x';
let two_hearts = '��';
  • Numeric types
let x = 27;// x has type i32 (int);
let y = 0.1;// x has type f64 (float);
"所有数字类型如下,i开头为signed,u开头为unsigned"
i8
i16
i32
i64
u8
u16
u32
u64
isize
usize
f32
f64
  • Array 数组类型, slice抽取
fn array_test(){
    println!("测试数组");
    let a = [0,1,2,3,4,5];
    let mid = &a[1..4];
    let com = &a[..];
    for var in mid {
        print!("{0}|", var);
    }
    println!("抽取部分");
    for var in com {
        print!("{0}|", var);
    }
    println!("抽取全部");
}
  • tupe 固定列表类型
let x = (1, "name");
let x: (i32, &str) = (1, "name");
println!("name = {0}", x.1);
  • func 函数类型
fn var_func(){
    println!("下面测试函数赋值,调用argmust函数");
    let func: fn(i32, &str) -> i32 = argmust;
    func(5, "var_func");
}
4.comments 块注释

在 rust 里有两种注释:

// 行注释
/// 文档注释(文档注释支持markdown标签语言)

还有第三种风格

//! 这种一般用在模块文件的头部
注意注释的规范,可以方便后期生成文档。
rustdoc 生成html文档

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值