如果要使用Qt,则必须拥抱quint8
,quint16
依此类推。
如果要使用GLib,则必须欢迎guint8
,guint16
依此类推。
在Linux上有u32
,s16
依此类推。
uC / OS定义SINT32
,UINT16
依此类推。
而且,如果您必须结合使用这些东西,则最好为遇到麻烦做好准备。由于你的机器u32
将被typedef
D,共long
并且quint32
将typedef
维超int
,编译器会抱怨。
如果有的话,为什么每个人都这样做<stdint.h>
?这是图书馆的某种传统吗?
stdint.h
发明的原因。
sizeof(int) * CHAR_BIT
(例如)并使用它呢?如果您的int
数据太小而无法表示您的范围(例如数组索引),那么您几乎可以肯定不应该使用int
,而是类似的东西size_t
。为什么会有int32
更多意义呢?固定宽度唯一有意义的时间是系统之间的通信(例如文件/网络格式)...
uint16_t
(或它的fast
或least
变体)。我的观点是:这些类型易于使用并且存在它们的原因。
size_t
和/或uint64_t
。