为什么我们在大多数当前协议中发送字符串的长度

Why do we send the length of a string in most of the currently protocols

我想知道为什么大多数协议(例如 dns)在它之前写一个字符串的长度。

例如:

3www6google3com

为什么要这样做?网上查了也搞不清楚。

因为这样我们就不会限制字符串中的内容。另一种方法是使用字符串末尾的某种带内信号,例如 C 的 [=10=],这意味着您不能在其中包含某些类型的数据,或者您必须处理引用某种。前缀长度更容易使用并且不易出错。