55.6. 消息数据类型#
本节介绍消息中使用的基本数据类型。
- Int
n(i) 网络字节顺序(最高有效字节在前)中的
n位整数。如果指定了i,则它将显示的确切值,否则该值是可变的。例如,Int16、Int32(42)。- Int
n[k] 一个
kn位整数数组,每个整数均采用网络字节顺序。数组长度k始终由消息中的前面字段确定。例如,Int16[M]。- String(
s) 一个空终止字符串(C 样式字符串)。字符串没有特定的长度限制。如果指定了
s,则它将显示的确切值,否则该值是可变的。例如,String、String("user")。注意
字符串长度没有预定义限制,后端可以返回任何长度的字符串。对于前端来说,一个好的编码策略是使用可扩展缓冲区,以便可以接受任何适合内存中的内容。如果不可行,请读取完整的字符串并丢弃不适合固定大小缓冲区的尾随字符。
- Byte
n(c) 恰好
n个字节。如果字段宽度n不是常量,则始终可以从消息中的前面字段确定它。如果指定了c,则它就是确切的值。例如,Byte2、Byte1('\n')。
