la historia del lenguaje C
Historia del Lenguaje C .C es un lenguaje de programación creado en 1972 por Dennis M. Ritchie en los Laboratorios Bell como evolución del anterior lenguaje B, a su vez basado en BCPL. Al igual que B, es un lenguaje orientado a la implementación de Sistemas Operativos, concreta mente Unix. C es apreciado por la eficiencia del código que produce y es el lenguaje de programación más popular para crear software de sistemas, aunque también se utiliza para crear aplicaciones.
Se trata de un lenguaje débilmente tipificado de medio nivel pero con muchas características de bajo nivel. Dispone de las estructuras típicas de los lenguajes de alto nivel pero, a su vez, dispone de construcciones del lenguaje que permiten un control a muy bajo nivel. Los compiladores suelen ofrecer extensiones al lenguaje que posibilitan mezclar código en ensamblador con código C o acceder directamente a memoria o dispositivos periféricos.
La primera estandarización del lenguaje C fue en ANSI, con el estándar X3.159-1989. El lenguaje que define este estándar fue conocido vulgarmente como ANSI C. Posteriormente, en 1990, fue ratificado como estándar ISO (ISO/IEC 9899:1990). La adopción de este estándar es muy amplia por lo que, si los programas creados lo siguen, el código es portátil entre plataformas y/o arquitecturas.
¿Cómo funciona el lenguaje C?
Para los que recién se inician en esto, para lograr hacer funcionar un programa en C, es necesario 2 cosas.
Código fuente
Compilador
Bien veámoslo de manera detenida.
El código fuente consiste en las lineas de código que tu escribes, por ejemplo tu lista de funciones, variables, procesos, etcétera, las cuales juntas hacen un programa.
Todos los programas de C, tienen que tener la función main() dicha función es la primera en ser llamada cuando ejecutas el programa. Pero esto lo veremos más adelante.
Ahora, ya cuando tenemos nuestro código fuente listo, necesitamos que la computadora lo pueda interpretar, ahí es donde entra el compilador.
Un compilador es el que se encarga de traducir nuestro código fuente (entendido únicamente por otros desarrolladores) al código binario que entiende la computadora.
De tal forma que cuando compilas un programa, se crean automáticamente los enlaces a librerías que utilizaste, crea un código binario y finalmente genera un ejecutable.
Si quieres seguir viendo más artículos del lenguaje C puedes ir al siguiente enlace tag/c.
¿Qué es un compilador?
es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación. Usualmente el segundo lenguaje es lenguaje de máquina, pero también puede ser un código intermedio (bytecode), o simplemente texto. Este proceso de traducción se conoce como compilación.
¿Qué es un interprete?
intérprete o interpretador es un programa informático capaz de analizar y ejecutar otros programas. Los intérpretes se diferencian de los compiladores o de los ensambladores en que mientras estos traducen un programa desde su descripción en un lenguaje de programación al código de máquina del sistema, los intérpretes sólo realizan la traducción a medida que sea necesaria, típicamente, instrucción por instrucción, y normalmente no guardan el resultado de dicha traducción.
¿que es código fuente?
El código fuente de un programa informático (o software) es un conjunto de líneas de texto con los pasos que debe seguir la computadora para ejecutar un programa.
El código fuente de un programa está escrito por un programador en algún lenguaje de programación, pero en este primer estado no es directamente ejecutable por la computadora, sino que debe ser traducido a otro lenguaje o código binario; así será más fácil para la máquina interpretarlo (lenguaje máquina o código objeto que sí pueda ser ejecutado por el hardware de la computadora). Para esta traducción se usan los llamados compiladores, ensambladores, intérpretes y otros sistemas de traducción.
El término código fuente también se usa para hacer referencia al código fuente de otros elementos del software, como por ejemplo el código fuente de una página web, que está escrito en lenguaje de marcado HTML o en Javascript, u otros lenguajes de programación web, y que es posteriormente ejecutado por el navegador web para visualizar dicha página cuando es visitada.
El área de la informática que se dedica a la creación de programas, y por tanto a la creación de su código fuente, es la ingeniería de software.
¿que es código objeto?
e llama código objeto al código que resulta de la compilación del código fuente.1 Puede ser en lenguaje máquina o bytecode, y puede distribuirse en varios archivos que corresponden a cada código fuente compilado. Luego un enlazador (linker) se encarga de juntar todos los archivos de código objeto para obtener el programa ejecutable. Código objeto: Conjunto de instrucciones y datos escritos en un lenguaje que entiende el ordenador directamente: binario o código máquina. Provienen de la traducción de cierto código fuente, es un fragmento del programa final y es específico de la plataforma de ejecución.
Consiste en lenguaje máquina o bytecode y se distribuye en varios archivos que corresponden a cada código fuente compilado. Para obtener un programa ejecutable se han de enlazar todos los archivos de código objeto con un programa llamado enlazador (linker).
¿que es un código ejecutable?
El código ejecutable corresponde a unidades de programas. Donde la computadora puede realizar las instrucciones compiladas que tendrán enlazadas una o varias bibliotecas.
Generalmente, son archivos informáticos con la extensión EXE o COM, si los han de ejecutar computadoras con sistema operativo de Microsoft Windows o con bits de marca que trae Linux para ser ejecutable.
Generalmente, se confunde con el código objeto porque al leer su estructura se comprende como símbolos. Pero en realidad, este código se encuentra empaquetado y listo para ser ejecutado en cualquier computadora.
El beneficio de tener el código ejecutable, es que se puede saber que la compilación fue realizada correctamente y que el programa, si no tiene errores de manejo, puede funcionar correctamente, porque está libre de errores de variables, signos y demás.