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的实体框架核心中的等效数据类型

mysql等效数据类型

如何将 System::^array 从 C# 函数转换为 C++ 中的等效数据类型

如何确定protobuf中的消息类型,以便我可以使用该类型.parsefrom(byte [])

google protobuf 数据类型_理解Protobuf数据格式解析

Snowflake 中的 SQL Server 等效表类型是啥