不灭的焱

革命尚未成功,同志仍须努力下载JDK17

作者:Albert.Wen  添加时间:2024-02-14 01:15:06  修改时间:2024-04-28 23:46:40  分类:C/C++/Rust  编辑

Rust代码讲解

println!("{:?}")

在println!不能直接打印出来的情况下,使用println!("{:?}"),可以打印数据类型。

  • 如果是结构体,可以打印结构体信息。
  • 如果是数组,可以打印数组的信息。
fn main() {
    let string1 = String::from("Hello world");
    let string2 = string1.as_bytes();   
}

在main函数里面,定义了string1和string2

string1是从"hello world"构造的

string2是从string1构造的

println!("{}", string2);
//会错误
//error [E0277]
//[u8] doesn't implement std::fmt::Display

想显示string2,

但是提示错误

根据错误类型,我们知道

string2的类型是一个数组,数组里面的元素是u8类型

数组不能直接显示。

因为数组是一个集合。

要显示一个集合,怎么办?

println!("{:?}", string2);

这就可以了。

for i in string2 {
    println!("{}", i);
}

这就可以了

这种方式,是遍历里面的元素。

fn main() {
    let string1 = String::from("Hello world");
    let string2 = string1.split(' ');
    println!("{:?}", string2);
}

这段代码可以打印string2的类型。

#[derive(Debug)]
struct Car{
    name:String,
}
fn main() {
    let car1 = Car{
        name:String::from("BMW"),
    };
    println!("{:?}", car1);
}