<squbquyoujs.fsf@stellar.co.jp>の記事において
manmos@stellar.co.jpさんは書きました。

> データや、通信のプロトコルなどで、レーコド数やオクテット数をそのデータ
> 内に含めることは少なくないわけですが、その数値自体を含めたヘッダ長など
> も、それに含めるかどうかは別れてくると思うのです。
> 
> 私としては、lengthにヘッダ長等を含めた形にするプロトコル(やファイル形
> 式) を定義することが多いのですが、皆さんどうなんでしょう?

たまに、長さのフィールドが可変長のことってないですか?
128以下なら 1バイト それ以上なら 2バイトみたいな。
そんなときに、ヘッダの長さまで length に含めると、
同じデータに対して、二通りの表現ができてしまうという、ちょっと
気持ち悪い現象が起きたりして、ちょっといやかな、ということは
あります。

> 最近、外からもらう仕様は、それらのデータが含まれていない。というか、
> 「仕様書に、どういう数値か書いてないんですけど、headerとtrailerを含め
> ますか?」って聞いたら「普通、入れないでしょう。」見たいなことをいわれ
> るんです。

なので、私も「普通、入れないでしょう。」派かな。

桂 英治@(株)横浜インテリジェンス ( katsura@hamaint.co.jp )