c – “中使用的命名约定

前端之家收集整理的这篇文章主要介绍了c – “中使用的命名约定前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
< cstdint> (< stdint.h>)标头定义了几种整数类型,它们的名称遵循以下模式:intN_t,其中N是位数,而不是字节数.

鉴于字节未严格定义为8位长度,为什么这些类型不能定义为例如int1_t而不是int8_t?这不是更合适,因为它考虑了具有不寻常长度字节的机器吗?

解决方法

在没有这些尺寸的机器上,未定义类型.也就是说,如果您的机器没有8位字节,则int8_t将不可用.但是,您仍然可以使用最少的版本,例如int_least16_t.

人们怀疑的原因是,如果你想要一个精确的大小,你通常需要一个比特大小,而不是一个抽象的字节大小.例如,所有互联网协议都处理8位字节,因此您需要具有8位,无论是否为本机字节大小.

This answer在这方面也非常有用.

猜你在找的C&C++相关文章