Ответ 1

! Оператор реализован для многих примитивных типов и эквивалентен оператору ~ в C. Смотрите этот пример (детская площадка):

let x = 0b10101010u8;
let y = !x;
println!("x: {:0>8b}", x);
println!("y: {:0>8b}", y);

Выходы:

x: 10101010
y: 01010101

Смотрите также: