52.6. Типы данных сообщений#
52.6. Типы данных сообщений #
Этот раздел описывает базовые типы данных, используемые в сообщениях.
- Int
n
(i
) n
-битное целое число в сетевом порядке байтов (самый значимый байт первым). Если указано значениеi
, то оно будет точным значением, в противном случае значение может быть переменным. Например, Int16, Int32(42).- Int
n
[k
] Массив из
k
целых чиселn
-бит, каждое в сетевом порядке байтов. Длина массиваk
всегда определяется ранее в сообщении. Например, Int16[M].- String(
s
) Строка, завершающаяся нулевым символом (строка в стиле C). Нет конкретного ограничения на длину строк. Если указано
s
, то это точное значение, которое будет отображаться, в противном случае значение может быть переменным. Например, Строка, Строка("пользователь").Примечание
Нет предопределенного ограничения на длину строки, которую может вернуть сервер. Хорошей стратегией программирования для клиентской части является использование расширяемого буфера, чтобы принять все данные, которые помещаются в память. Если это невозможно, следует прочитать полную строку и отбросить конечные символы, которые не помещаются в фиксированный буфер заданного размера.
- Byte
n
(c
) Точно
n
байт. Если ширина поляn
не является константой, она всегда определяется из предыдущего поля в сообщении. Если указаноc
, это точное значение. Например, Byte2, Byte1('\n').