Практическая переносимость целых чисел точной ширины - PullRequest
0 голосов
/ 08 мая 2018

7.20.1.1p3 указывает, что целые числа точной ширины ({u,}int{8,16,32,64}_t) являются необязательными.

Как это практически ограничит переносимость моего программного обеспечения, если я буду его использовать?

(меня особенно интересует поддержка машин под управлением Linux, Windows или Mac OS.)

Ответы [ 2 ]

0 голосов
/ 18 мая 2018

Итак, что я узнал:

и https://en.wikipedia.org/wiki/Word_(computer_architecture) кажется, что можно сильно рассчитывать на аппаратную поддержку 8-битных, 16-битных и 32-битных целых (но не обязательно 64-битных целых) на машинах, созданных примерно с 1978 г. .

0 голосов
/ 08 мая 2018

Как очень хорошее практическое правило, точные целые значения ширины полностью поддерживаются любой машиной с процессором, использующим 2 типа signed.

Тебе не помешает найти исключение. Некоторые мэйнфреймы и кассовые аппараты могут использовать дополнение 1 и еще более редкую схему величин со знаком. Возможно, вам будет сложно запустить ваш код на таких машинах, но не хотите ли вы этого?

...