Re[4]: Откуда эта лютая любовь к знаковым целым?
От: PM  
Дата: 05.05.20 19:25
Оценка:
Здравствуйте, Pavel Dvorkin, Вы писали:

PD>Чего ты добьешься, перейдя на unsigned ? Увеличения диапазона положительных чисел в 2 раза ? Смысла в этом немного, так как 2 миллиарда или 4 миллиарда — как правило, черт один, вполне хватит. А если не хватит, то надо на 64 бита переходить, а не бороться за один бит.


"640kB хватит всем"

Те люди, кто для знаковых индексов обычно используют int, используют его же не задумываясь для количества элементов в контейнеров, размера и позиции в файловых потоках. Но 2 гигабайта для бинарных данных по нынешним временам не так уж и много. И я уже пару раз сталкивался с таким ограничением.

Например, в Google Protocol Buffers v3.2.0 облагодетельствовали: "The default parsing byte size limit has been raised from 64MB to 2GB"].

PD>А больше я ничего не вижу. Зато я знаю, что если в результате арифметики с положительными числами результат оказался отрицательным там, где такого не должно быть,то ошибку надо искать в алгоритме, а не в неявных преобразованиях.


Кажется это справедливо и для беззнаковых — результат сложения или умножения не может быть меньше операнда.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.