uint16_t和unsigned short int之间有什么区别?

前端之家收集整理的这篇文章主要介绍了uint16_t和unsigned short int之间有什么区别?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我来使用一个类型为uint16_t的变量,但由于我的项目限制,我无法使用该数据类型。我可以使用unsigned short int代替uint16_t吗?
我不知道两者之间有什么区别。有人可以澄清一下吗
uint16_t是无符号的16位整数。

unsigned short int是无符号的短整数,但大小取决于实现。该标准仅表示至少为16位(即UINT_MAX的最小值为65535)。在实践中通常是16位,但是你不能保证这样做。

注意:

>如果要使用便携式无符号16位整数,请使用uint16_t。
> inttypes.h和stdint.h都在C99中引入。如果您使用C89,请定义自己的类型。
> uint16_t可能不会在某些实现中提供(参见下文),但是unsigned short int始终可用。

参考:C11(ISO / IEC 9899:201x)§7.20整数类型

For each type described herein that the implementation provides) shall declare that typedef name and define the associated macros. Conversely,for each type described herein that the implementation does not provide,shall not declare that typedef name nor shall it define the associated macros. An implementation shall provide those types described as ‘‘required’’,but need not provide any of the others (described as ‘optional’’).

原文链接:https://www.f2er.com/windows/372480.html

猜你在找的Windows相关文章