-
- Ставь правильно скобки и пусть таблица приоритетов идет лесом! - Aleksey_75(10.12.2019 16:49)
- я уже понял. Иногда было лень, но теперь уж нет! :-) Сегодня парнишка задолбался с отчетом за ноябрь. Пульт говорит - "месяц нет тот". :-) - Лагунов(10.12.2019 17:05)
- Дык он и поставил. Только зачем-то умножение завернул в скобки, хотя с любой точки зрения оно гораздо гораздее сложения... - SciFi(10.12.2019 16:53)
- не, у меня раньше в скобках был только сдвиг >>4. Это и были единственные скобки. С этим и врала сволочь - Лагунов(10.12.2019 17:06)
- Сдвиг корректно работает только с unsigned. C signed возможны варианты, лучше ставить деление. Компилятор сам подставит сдвиг где можно. - misyachniy(10.12.2019 17:14)
- С signed сдвиг может оказаться арифметическим, а не логическим. Применение маски после сдвига спасает ситуацию. - fk0(10.12.2019 23:45)
- "If E1 has a signed type and a negative value, the resulting value is implementation-defined" - то есть может быть вообще всё, что угодно. - SciFi(11.12.2019 07:54)
- ладно, я забыл про с про сдвиг signed. :-) - Лагунов(11.12.2019 08:35)
- Ещё интересный факт, от которого у чайника внутри закипит: SciFi(178 знак., 11.12.2019 09:10)
- а разве старший бит i не станет строго "0"? У меня вроде ПОКА везде встает в "0". :-) - Лагунов(11.12.2019 11:09)
- Ещё интересный факт, от которого у чайника внутри закипит: SciFi(178 знак., 11.12.2019 09:10)
- ладно, я забыл про с про сдвиг signed. :-) - Лагунов(11.12.2019 08:35)
- т.е. если объявлена знаковая переменная, то при сдвиге влево знак сохраняется? А при сдвиге вправо он еще и сдвигается вправо? - Лагунов(11.12.2019 07:54)
- При сдвиге влево отрицательного числа - знак не сохраняется, присдвиге вправо - знак расширяется (то есть слева задвигается единица). - Samx(11.12.2019 16:05)
- на всякий случай буду помнить, спасибо - Лагунов(11.12.2019 20:06)
- Он приврал, вернее, недосказал, ну да ладно. - SciFi(11.12.2019 20:16)
- на всякий случай буду помнить, спасибо - Лагунов(11.12.2019 20:06)
- При сдвиге влево отрицательного числа - знак не сохраняется, присдвиге вправо - знак расширяется (то есть слева задвигается единица). - Samx(11.12.2019 16:05)
- "If E1 has a signed type and a negative value, the resulting value is implementation-defined" - то есть может быть вообще всё, что угодно. - SciFi(11.12.2019 07:54)
- С signed сдвиг может оказаться арифметическим, а не логическим. Применение маски после сдвига спасает ситуацию. - fk0(10.12.2019 23:45)
- Сдвиг корректно работает только с unsigned. C signed возможны варианты, лучше ставить деление. Компилятор сам подставит сдвиг где можно. - misyachniy(10.12.2019 17:14)
- ) Больше скобок хороших и разных) я тоже все заворачиваю в скобки, блоки читабельнее получаются - Aleksey_75(10.12.2019 17:00)
- не, у меня раньше в скобках был только сдвиг >>4. Это и были единственные скобки. С этим и врала сволочь - Лагунов(10.12.2019 17:06)
- Ставь правильно скобки и пусть таблица приоритетов идет лесом! - Aleksey_75(10.12.2019 16:49)