C++11 типов uint против u_int
Я просто наткнулся на тип u_int8_t
потому что он не компилировался в Windows+MinGW (но прекрасно компилировался под Linux). Согласно этому сайту стандарт C++11 определяет тип uint8_t
, Я просто использовал последний, и все работало.
Возникшие вопросы:
- Есть ли разница между
u_int8_t
а такжеuint8_t
? - Есть ли причина (помимо устаревшего кода) использовать
u_int8_t
? - Можно ли предположить, что
uint8_t
будет присутствовать, если я использую компилятор C++11 (на разных ОС или архитектурах)? - Являются ли ответы на вышеуказанные вопросы также применимыми для других типов (
intX_t
а такжеuintX_t
)?
1 ответ
Есть ли разница между
u_int8_t
а такжеuint8_t
?
u_int8_t
это просто очень старое имя, которое не было стандартизировано. Избегай это.
Есть ли причина (помимо устаревшего кода) использовать
u_int8_t
?
Самоубийство со стороны коллеги.
Можно ли предположить, что
uint8_t
будет присутствовать, если я использую компилятор C++11 (на разных ОС или архитектурах)?
Стандарт C++ требует, чтобы он присутствовал во всех реализациях, имеющих доступный 8-битный тип без знака (сегодня это означает все, что не является экзотикой).
Являются ли ответы на вышеуказанные вопросы также применимыми для других типов (
intX_t
а такжеuintX_t
)?
Да, довольно.