НЕ работает с NSString с шестнадцатеричным значением Objective-C

Я получаю значение UISlider следующим образом:

int value = (int)sender.value;

Эти значения составляют от 0 до 100. Теперь ему нужно получить шестнадцатеричное значение этого целого числа, а также получить значение NOT. Итак, я получаю шестнадцатеричное число:

NSString *hexedString = [NSString stringWithFormat:@"%X", value];

если десятичное целое число равно 100, то шестнадцатеричный - это 64, который равен 01100100 в двоичном выражении, операция NOT для двоичного файла должна быть 10011011 в шестнадцатеричном состоянии равна 9B. Как я могу достичь этой НЕ-операции?

1 ответ

Используйте оператор ~ для переключения всех бит.

int value = sender.value;
value = ~value; // toggle bits
value &= 0xff; // force to 8-bits - optional

licensed under cc by-sa 3.0 with attribution.