Хищник писал(а):
spf писал(а):
Верно. (хотя, "length character" намекает)
Да не так чтобы намекает. Это "символ длины", если дословно. В сочетании с другими частями описания получается, что это как раз не тот же самый символ, что и "символ в строке".
spf писал(а):
Но, слово COUNT полагает именно вариант "ровно столько же места [на счетчик], сколько и каждый символ", цитирую: "u is the contents of the character at c-addr1"
Ничего подобного тут не предполагается в явном виде. "U это содержание символа по c-addr1". Смотрим выше - там лежит lenght character.
См.
2.1 Definitions of terms,
character:
Depending on context, either 1) a storage unit capable of holding a character; or 2) a member of a character set.
counted string:
A data structure consisting of
one character containing a length followed by zero or more contiguous data characters. Normally, counted strings contain text.
Из этого также следует сделать вывод, что в counted-строке "storage unit" имеет один и тот же размер и под длину и под каждый символ данных.
Хищник писал(а):
Дальше берем спецификацию, в которой написано, что строка имеет implementation-defined максимальный размер. И что, для однобайтовых символов это не больше 255?
Да, для однобайтовых counted-строк ограничение 255.
Строки, представимые в виде пары ( addr u ), имеют ограничение длины соответственно размеру ячейки (например, при ячейке 32 бита — ~ 4 Gb).
Хищник писал(а):
Написано-то как раз "не меньше". А для двухбайтовых это должно быть 65535? То есть иметь 64К символов по одному байту такая спецификация запрещает? Я этого в тексте не вижу, вижу ровным счетом наоборот - там разрешено....
Не запрещает; более того, по большому счету, counted-строки указанного формата держатся для обратной совместимости (и слово COUNT привязанно именно к этому формату), см
3.1.3.4 Counted strings.
Также, не запрещается и хранить строки в любой другом формате (например, со счетчиком размером 4 байта и символами размеров в байт). Просто, к адресам строк другогих форматов неприменимо слово COUNT.
PS я бы предложил вырезать сообщения на тему "о роли спецификаций" во флуд ;)
Комментировать "корреляцию" тут уже не буду.