Rust_Examples_and_Notes/general_code/010_add_distract_math_liter...

25 lines
858 B
Rust

//https://doc.rust-lang.org/rust-by-example/primitives/literals.html
fn main() {
println!("1 + 2 = {}", 1u32 + 2);
println!("1 + 2 = {}", 32 + 2);
println!("1 - 2 = {}", 1i32 - 2);
//println!("1 - 2 = {}", 1u32 - 2); // panic because of overflow
// 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);
}