Protobuf 中的等效数据类型
Posted
技术标签:
【中文标题】Protobuf 中的等效数据类型【英文标题】:DataType equivalent in Protobuf 【发布时间】:2015-06-20 05:28:56 【问题描述】:我知道 protobuf-c 支持的数据类型仅限于提到的那些 here ,但是什么可以是一个好的 protobuf-c 等效于 C 中的以下数据类型
时间_t, int8_t, int16_t, uint8_t, uint16_t, 超短
【问题讨论】:
【参考方案1】:对于time_t
,使用uint64_t
。
对于所有其他人,请使用sint32_t
(通常为否定)、int32_t
(很少为否定)或uint32_t
(从不否定)。 Protobuf 对整数使用可变宽度编码,以避免在线路上使用比实际需要更多的空间。例如,小于 128 的数字将被 int32_t
编码为 1 个字节。
【讨论】:
以上是关于Protobuf 中的等效数据类型的主要内容,如果未能解决你的问题,请参考以下文章
postgresql jsonb的实体框架核心中的等效数据类型
如何将 System::^array 从 C# 函数转换为 C++ 中的等效数据类型
如何确定protobuf中的消息类型,以便我可以使用该类型.parsefrom(byte [])