What is the bitwise NOT operator in Rust?
Looking at the list of bitwise operators in the Rust Book, I don't see a NOT operator (like ~
in C). Is there no NOT operator in Rust?
Solution 1:
The !
operator is implemented for many primitive types and it's equivalent to the ~
operator in C. See this example (playground):
let x = 0b10101010u8;
let y = !x;
println!("x: {:0>8b}", x);
println!("y: {:0>8b}", y);
Outputs:
x: 10101010 y: 01010101
See also:
- How do you set, clear and toggle a single bit in Rust?