私は、ANSI C コンパイラが関数に対して 31 個の引数などをサポートしなければならないという最小限の要件をたくさん見てきましたが、ほとんどの数字は何らかの意味を持っているようです。
ただし、ソース行で 509 文字以上をサポートする理由がわかりません。511 または 512 の方が理にかなっていますが、509 は任意のようです。
この数字の理由は何ですか?
CR
これはおそらく+ LF
+文字の可能性を考慮し'\0'
、各行の文字列表現が 512 バイトのメモリに収まるようにするためです。
この質問から直接
おそらく 509 は、「\r\n」行終端記号用に 2 バイト、「\0」文字列終端記号用に 1 バイトの 512 バイトのバッファを許可することを意図しています。