我来使用类型为uint16_t
的变量,但由于我的项目限制,无法使用该数据类型。可以用unsigned short int
代替uint16_t
吗?
我不知道两者之间的区别。有人可以澄清一下吗?
最佳答案
uint16_t
是无符号的16位整数。unsigned short int
是无符号的短整数,但是大小取决于实现。该标准只说它至少是16位(即UINT_MAX
的最小值是65535
)。实际上,它通常是16位,但是您不能保证它是正确的。
注意:
uint16_t
。 inttypes.h
和stdint.h
均在C99中引入。如果使用的是C89,请定义自己的类型。 uint16_t
(请参阅下面的引用资料),但是unsigned short int
始终可用。 引用:C11(ISO/IEC 9899:201x)§7.20整数类型
关于c - 在64位处理器的情况下,uint16_t和unsigned short int有什么区别?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17693445/