Установка Couchbase Python SDK 2.5.3

В стандарте C99, 7.18.1.3 Самые быстрые целые числа минимальной ширины.

(7.18.1.3p1) "Каждый из следующих типов обозначает целочисленный тип, который обычно является самым быстрым225), чтобы работать со всеми целыми типами, которые имеют как минимум указанную ширину. "

225)« Назначенный тип не гарантируется как самый быстрый для всех целей, если в реализации нет четких оснований для выбора одного типа над другой, он просто выберет некоторый целочисленный тип, удовлетворяющий требованиям подписи и ширины. "

и

(7.18.1.3p2)" Имя typedef int_fastN_t обозначает наивысший знак целого типа с шириной не менее N. Имя typedef uint_fastN_t обозначает самый быстрый целочисленный тип без знака с шириной не менее N. "

Типы int_fastN_t и uint_fastN_t являются аналогами целых чисел точной ширины intN_t и uintN_t. Реализация гарантирует, что они принимают не менее N бит, но реализация может принимать больше бит, если она может выполнять оптимизацию с использованием более крупных типов; он просто гарантирует, что они берут как минимум N бит.

Например, на 32-битной машине uint_fast16_t можно определить как unsigned int, а не как unsigned short, потому что работа с типами размера машинного слова будет более эффективной.

Еще одна причина их существования - точные целые числа полной длины являются необязательными в C, но требуются самые быстрые целые типы минимальной ширины и целые типы минимальной ширины (int_leastN_t и uint_leastN_t).

1
задан barbsan 18 January 2019 в 07:35
поделиться

0 ответов

Другие вопросы по тегам:

Похожие вопросы: