experiments

All kinds of coding experiments
Log | Files | Refs | Submodules

types.rs (754B)


      1 fn main() {
      2     println!("CASTING");
      3     let decimal = 93.243_295_f32;
      4     let cast_u32 = decimal as u32;
      5     let cast_u8 = decimal as u8;
      6     // Only u8 can be cast to char (even though char is 32 bits)
      7     let cast_char = cast_u8 as char;
      8     println!("u8: '{}', char: '{}'", cast_u8, cast_char);
      9 
     10     println!("LITERALS");
     11     println!("size(u8): {}", std::mem::size_of_val(&cast_u8));
     12     println!("size(u32): {}", std::mem::size_of_val(&cast_u32));
     13     println!("size(char): {}", std::mem::size_of_val(&cast_char));
     14     println!("size(f32): {}", std::mem::size_of_val(&decimal));
     15 
     16     println!("ALIASING");
     17     type UnsignedInt128 = u128;
     18     let long = 8 as UnsignedInt128;
     19     println!("size(UnsignedInt128): {}", std::mem::size_of_val(&long));
     20 }