Rust常量和运算符
整数%uA01
, 浮点数%uA01.2
, 字符%uA0&aposa&apos
, 字符串%uA0"abc"
, 布尔%uA0true
%uA0和单位类型%uA0()
%uA0可以用常量来表示。
整数可选地,使用十六进制,或者使用八进制或二进制记数法表示为前缀:%uA00x
,%uA00o
%uA0或%uA00b
.
下划线可以插在数值常量来提高可读性,如:.%uA01_000
%uA0就类似于%uA01000
, 并且%uA00.000_001
%uA0类似于%uA00.000001
.
我们需要告诉编译器,使用常量的类型。现在,我们将使用%uA0u32
%uA0后缀表明该文本是一个无符号的32位整数, 和%uA0i32
%uA0后缀以表明它是一个符号的32位整数。
现有运算符和它们的优先级类似于C-类语言
fn main() { // Integer addition println!("1 + 2 = {}", 1u32 + 2) // Integer subtraction println!("1 - 2 = {}", 1i32 - 2) // TODO ^ Try changing `1i32` to `1u32` to see why the type is important // Short-circuiting boolean logic println!("true AND false is {}", true && false) println!("true OR false is {}", true || false) println!("NOT true is {}", !true) // Bitwise operations println!("0011 AND 0101 is {:04b}", 0b0011u32 & 0b0101) println!("0011 OR 0101 is {:04b}", 0b0011u32 | 0b0101) println!("0011 XOR 0101 is {:04b}", 0b0011u32 ^ 0b0101) println!("1 << 5 is {}", 1u32 << 5) println!("0x80 >> 2 is 0x{:x}", 0x80u32 >> 2) // Use underscores to improve readability! println!("One million is written as {}", 1_000_000u32) }