![]() |
1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
![]() ![]() |
![]() |
18192123 |
![]()
Сообщение
#1
|
![]() Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 920 Пол: Женский Реальное имя: Марина Репутация: ![]() ![]() ![]() |
Нужно заменить в 16-ричном представлении числа 5-ку на f.
объясните пожалуйста, в чём у меня ошибка здесь?
Сообщение отредактировано: 18192123 - 18.05.2007 22:18 |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
А вот тут происходит то, о чем я писал тебе раньше... Смотри, допустим, есть число: 0x2575
Первое сравнение отработает прекрасно: последняя цифра числа = 0x5, маска тоже 0x5, никаких проблем, последняя цифра меняется на 0xf... Дальше - проблема: маска mask = 0x50 после сдвига, вторая цифра (вместе с первой) = 0x70, делаем AND - что будет? 01010000 and 01110000 = 01010000 , т.е. произведение равно маске, ХОТЯ цифра-то другая... Чтобы отработало правильно, здесь применяется другой способ: while (mask>0) { |
![]() ![]() |
![]() |
Текстовая версия | 24.07.2025 2:31 |