Использование беззнаковых целочисленных типов данных целесообразно в следующих случаях:
- Когда необходимо экономить память, но нет необходимости в представлении отрицательных чисел. 1 Это позволяет увеличить максимально возможное значение вдвое и ещё на единицу. 1 Например, беззнаковым коротким целым можно представить число от 0 до 65 535. 1
- В алгоритмах, использующих целочисленное переполнение. 1 Оптимизирующие компиляторы могут менять порядок операций и производить алгебраические преобразования, в результате чего переполнение в оптимизированном алгоритме может происходить в другой момент, чем в неоптимизированном, или не происходить вовсе, что приводит к неопределённому поведению. 1 Для беззнаковых целых оптимизации, влияющие на арифметическое переполнение, запрещены, благодаря чему поведение при переполнении всегда определено. 1
Однако следует по возможности избегать беззнаковых типов, поскольку арифметика беззнаковых чисел не на всех компьютерах реализована одинаково и из-за этого при переносе программы с одной платформы на другую могут возникнуть проблемы. 3