How to use bitwise XOR in Rust

1 Answer

0 votes
/*
  
X Y | X ^ Y
0 0 |   0
0 1 |   1
1 0 |   1
1 1 |   0
  
*/

fn print_bits(label: &str, n: u8) {
    println!("{:08b} {}", n, label);
}

fn main() {
    let cases = [(5, 5), (7, 0), (0, 6), (0, 0)];

    for (x, y) in cases {
        print_bits("", x);
        println!("^");
        print_bits("", y);
        println!("=");
        print_bits("", x ^ y);
        println!("\n");
    }
}


 
 
/*
run:
   
00000101 
^
00000101 
=
00000000 


00000111 
^
00000000 
=
00000111 


00000000 
^
00000110 
=
00000110 


00000000 
^
00000000 
=
00000000 

*/

 



answered Jul 11 by avibootz
edited Jul 11 by avibootz
...