C имеет стандартные typedefs
для них. Не определяй свой. Они называются intN_t
и uintN_t
, где N
равно 8, 16, 32, 64 и т. Д. Включите <stdint.h>
, чтобы получить их.
Если вы используете древний компилятор, в котором отсутствует stdint.h
, вы можете просто предоставить свой собственный соответствующий typedef для любой сломанной платформы, с которой вы работаете. Держу пари, что с любой не встроенной целью вы столкнетесь без stdint.h
:
CHAR_BIT
равно 8.
sizeof(char)
равно 1. <- Я бы поставил на это еще больше ...; -) </li>
sizeof(short)
равно 2.
sizeof(int)
равно 4.
sizeof(long long)
, если тип существует, равен 8.
Так что просто используйте их как заполнители для сломанных систем.