Таким образом, это округляется до следующего коэффициента 8.
Чтобы открыть входящее значение, присваивается число, поэтому мы можем правильно вычислить его.
Первый реальный шагx + 7. Это увеличивает значение, поэтому нам нужно только округлить.
0 -> 7
1 -> 8
2 -> 10
7 -> 14
8 -> 15
9 -> 16
~ 7 - битовая маска, 0xFFFFFFF8.Я бы упростил и использовал 0xF8 при работе с небольшими числами.
Затем добавленная стоимость комбинируется с битовой маской.По сути, мы отбрасываем последние три бита.
0 -> 7 -> 0
1 -> 8 -> 8
2 -> 10 -> 8
7 -> 14 -> 8
8 -> 15 -> 8
9 -> 16 -> 16
Это число затем приводится к адресу памяти, отменяя первоначальное приведение к типу uint.Поскольку вы имеете дело с блоками памяти и, по-видимому, получаете доступ к данным внутри них, имеет смысл иметь их в качестве указателя.