una tener tamaño numero metadescription google description descripcion debe cuantos caracteres c c89

tener - Razón para un límite de caracteres mínimo de 509



tamaño metadescription (4)

He visto muchos de los requisitos mínimos que un compilador ANSI C debe admitir como 31 argumentos para una función, y la mayoría de los números parecen tener algún tipo de sentido.

Sin embargo, no puedo ver el motivo para admitir al menos 509 caracteres en una línea de origen. 511 o 512 tendrían más sentido, pero 509 parece un poco arbitrario.

¿Cuál es la razón de este número?


Los límites de C11 dr 5.2.4.1 son diferentes a los dados por el OP. Sospecho que vienen de C89.

4095 caracteres en una línea fuente lógica

4095 caracteres en una cadena literal (después de la concatenación)

[Editar] @jwodder sugirió que se necesitaba una respuesta más completa.

Lo mejor que puedo proporcionar: 512 bytes fue el tamaño de sector más común para los disquetes, discos y discos duros de alrededor de 80 a mediados de los 90 y probablemente contribuyó, junto con los pensamientos @bizzehdee y @DigitalTrauma en cuanto al curioso límite de 509.

Era un tamaño de búfer muy popular.


No tengo ninguna fuente, pero pensé que son los dos " caracteres y el carácter / 0 que conforman estos 512 caracteres. No creo que los 2 caracteres sean para CRLF por 2 razones: estos no son caracteres predeterminados que debe escribir allí , y para LINUX solo es LF. Por eso digo que son los dos " personajes " .


directamente de esta pregunta

Tal vez se pretende que 509 permita un búfer de 512 bytes con dos bytes para un terminador de línea "/ r / n" y uno para un terminador de cadena ''/ 0''.


Esto quizás es para tener en cuenta los posibles caracteres CR + LF + ''/0'' y tener una representación de cadena de cada línea que aún se ajuste a 512 bytes de memoria.