Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

156
Vistas
¿Hay alguna documentación para pre-K&R c?

Estaba jugando con un emulador PDP11 en línea ( enlace ) y estaba mirando la sección de programación de sus preguntas frecuentes .

Dice esto sobre la programación en C en el emulador:

Debe escribir C anterior a K&R, que es bastante diferente del C moderno

Creo que esto se refiere a la versión de C en uso antes de la publicación de The C Programming Language . He tratado de entender esta versión leyendo los archivos C dispersos que puedo encontrar en el sistema de archivos del emulador, pero incluso cosas simples como declarar argc y argv me han eludido. Tampoco puedo encontrar nada al respecto en línea.

¿Hay alguna documentación, escrita en el momento o después del hecho, sobre C "pre-K&R"?

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Para este tipo de preguntas, mi fuente de acceso es la página web archivada del difunto Dennis Ritchie:

https://www.bell-labs.com/usr/dmr/www/

A partir de ahí, basta un clic para acceder a este manual de referencia inicial para C, escrito por el propio Ritchie:

https://www.bell-labs.com/usr/dmr/www/cman.pdf

Esto es de hecho "pre-K&R C", con anacronismos como =+ en lugar de += .

Este es el mismo manual de referencia que apareció, en forma actualizada, como Apéndice A en el libro K&R.

En la misma página hay enlaces a varias otras versiones de ese manual de referencia, así como notas e incluso el código fuente de dos versiones anteriores del compilador de Ritchie . Estos son bastante divertidos de ver, aunque como señala la página, "No podrá compilarlos con los compiladores de hoy".

Hay un sitio completo de Stack Exchange dedicado a preguntas como estas: https://retrocomputing.stackexchange.com/ .

over 4 years ago · Santiago Trujillo Denunciar

0

Steve Summit respondió sobre dónde obtener la documentación. Por lo tanto, esta publicación pretende resumir las diferencias notables de C moderno

Los tipos de argumentos de función eran bastante diferentes. No se especificaron entre paréntesis.

 void foo(a, b) int a; float b; { // Function body }

Sin comentarios de fila, como // . Solo /* */

No es lógico or y and . Los operadores && y || no existió. Los operadores bit a bit & y | en su lugar.

=- significaba lo mismo que -= , lo que genera ambigüedad con, por ejemplo, x=-1 .

No hubo punteros void . En su lugar, se usaron punteros char .

No se podían declarar variables en el encabezado for, por lo que había que escribir:

 int i=0; for(i=0; i<N; ++i)

= solo se usaron para asignaciones y no para inicialización. Esos se hicieron así: int x 3;

int implícito. Esto todavía es válido en C moderno. La diferencia es que ningún programador (cuerdo) lo está usando más. Este:

 foo 3;

en realidad es equivalente a

 int foo = 3;

No hubo calificador const

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda