Rust 表达式的值为空

Rust 表达式的值为空,rust,expression,Rust,Expression,为什么使用此代码在变量a中获得空值? 另外,如果没有{:?}格式,这不会编译吗 fn main() { let mut a = 5; let mut b = 6; let n = 7; let a = b = n; println!("{:?}", a); } 与C等其他语言不同,赋值表达式的计算结果不符合赋值;赋值始终计算为()与C等其他语言不同,赋值表达式的计算结果不等于赋值;赋值总是计算为()与C语言和其他一些语言不同,赋值表达式(b=n此处)以R

为什么使用此代码在变量
a
中获得空值? 另外,如果没有
{:?}
格式,这不会编译吗

fn main() {
    let mut a = 5;
    let mut b = 6;
    let n = 7;
    let a = b = n;
    println!("{:?}", a);
}

与C等其他语言不同,赋值表达式的计算结果不符合赋值;赋值始终计算为
()

与C等其他语言不同,赋值表达式的计算结果不等于赋值;赋值总是计算为
()

与C语言和其他一些语言不同,赋值表达式(
b=n
此处)以Rust形式返回
()


还要注意,
let a=
实际上并没有变异
a
,而是创建一个新的
a
,该新的
a
与以前的
()

不同于C和其他一些语言,赋值表达式(
b=n
此处)在Rust中返回
()


还要注意,
let a=
实际上并没有变异
a
,而是创建一个新的
a
,该新的
a与前一个相映成趣,并被赋值
()

,但b的值为7,a会发生什么情况?赋值表达式的计算结果为
()
b=n
是一个赋值表达式。因此,
a
的值是
()
。但是b的值是7,a会发生什么?赋值表达式的计算结果是
()
b=n
是一个赋值表达式。因此,
a
的值是
()