-
- Когда используете знаковые целые (int32_t, например), не
используйте сдвиги. Просто пишите *256 или /256. Иначе нарвётесь на
знак, рано или поздно. Сдвиг со знаком без специальных мер не
работает. А компилятор достаточно умён, чтобы заменить 256 на
сдвиги с должным учётом знака. Nikolay_Po(293 знак., 24.05.2023 23:09 - 23:16)
- Починили всего-то в c++20 - RxTx(25.05.2023 22:16)
- А по-подробнее? Сдвиги знак учитывать стали? Оно (ссылка)? Nikolay_Po(1 знак., 25.05.2023 22:27, ссылка)
- ISO/IEC JTC1 SC22 WG21 N 4860 [expr.shift] 7.6.7 Shift operators RxTx(59 знак., 25.05.2023 23:16, ссылка)
- Спасибо! - Nikolay_Po(26.05.2023 10:51)
- ISO/IEC JTC1 SC22 WG21 N 4860 [expr.shift] 7.6.7 Shift operators RxTx(59 знак., 25.05.2023 23:16, ссылка)
- А по-подробнее? Сдвиги знак учитывать стали? Оно (ссылка)? Nikolay_Po(1 знак., 25.05.2023 22:27, ссылка)
- Собственно 2^4 это константа, которую можно выбрать другой. С тем
чтобы она была выше возможной помехи. - Cкpипaчпророк(24.05.2023 23:15)
- Вижу, понимание есть. Дерзайте! Всё получится. - Nikolay_Po(24.05.2023 23:17)
- Починили всего-то в c++20 - RxTx(25.05.2023 22:16)
- Когда используете знаковые целые (int32_t, например), не
используйте сдвиги. Просто пишите *256 или /256. Иначе нарвётесь на
знак, рано или поздно. Сдвиг со знаком без специальных мер не
работает. А компилятор достаточно умён, чтобы заменить 256 на
сдвиги с должным учётом знака. Nikolay_Po(293 знак., 24.05.2023 23:09 - 23:16)