Guía De Programación En C++ Y Unix

Páginas: 36 (8786 palabras) Publicado: 26 de febrero de 2013
Guía de programación en C y UNIX
El compilador de C Llamadas al sistema Llamadas al sistema para uso de ficheros Flujos estándares y redirección Manejo de procesos Herramientas IPC y semáforos Memoria compartida Colas de mensajes

Guía de Programación en C y UNIX

Página 1 de 32

El compilador de C


El compilador de C o El programa cc. Pasos de compilación o Convenciones en losnombres de ficheros o Uso del compilador o Resumen de opciones para el compilador o El compilador de C++

El compilador de C
Este apartado es suficiente para dominar el uso básico del compilador de lenguaje C, a través del programa cc. Para comprender este texto no tienen por qué estar familiarizados con el C, aunque se precisan unas mínimas nociones de este lenguaje. Además, deberían conocerconceptos básicos relacionados con el desarrollo de programas, como programa fuente, objeto, enlace (linking), etc.

El programa cc. Pasos de compilación
Para compilar programas escritos en C, disponen de un compilador de nombre cc. Este compilador toma como parámetros los ficheros fuentes de que consta el programa final y, tras una serie de pasos, produce un fichero ejecutable. Si durante lacompilación se produce un error, no se genera el ejecutable. Los pasos de compilación en UNIX son al menos estos tres: * Preproceso (macros, inclusión de ficheros...) * Compilación a objeto * Enlace (linking) de objetos y bibliotecas El preproceso interpreta las macros creadas con #define y expande los ficheros para incluir con #include. No es de mucho interés para ustedes. Un fichero una vezpreprocesado se compila a código máquina, pero no se genera un ejecutable, sino un fichero objeto. Este estadio intermedio es necesario por muchos motivos, entre ellos que las rutinas de biblioteca, como printf, tienen que ser "empotradas" posteriormente para generar un ejecutable, y en general debido a que un programa en C puede constar de varios ficheros compilados por separado. Por eso existe un últimopaso, denominado enlace (linking en inglés), en el cual se recogen todos los ficheros objetos más las bibliotecas (que también residen en ficheros) necesarios para producir el fichero ejecutable.

Guía de Programación en C y UNIX

Página 2 de 32

Convenciones en los nombres de ficheros
Como se ha visto, en el transcurso de la ejecución del cc aparecen en escena varias clases de ficheros:fuentes, objetos, bibliotecas, ejecutables... El compilador de C es capaz de distinguir la clase de un fichero en base a sus últimos caracteres. La siguiente tabla muestra las convenciones más habituales.
.c .h .s .i .o .a

fichero fuente en C fichero cabecera fuente en C (sólo útil para los #include) fichero fuente en ensamblador (también reconocido) fichero fuente tras ser preprocesado(raramente empleado por el usuario) fichero objeto fichero de biblioteca

El compilador de C sólo genera un ejecutable, de nombre a.out, aunque se le puede indicar que tenga otro nombre con la opción -onombre_de_ejecutable.

Uso del compilador
El programa cc se invoca desde el shell, admitiendo como argumentos los ficheros empleados para construir el ejecutable más una serie de opciones decompilación. Las opciones y modalidades de uso del cc son amplísimas, por lo que en esta guía nos limitaremos a exponer las más comunes y útiles. Por omisión, el cc genera un ejecutable llamado a.out. En la línea de órdenes pueden incluir tanto ficheros fuentes en C como ficheros objeto, incluso fuentes en ensamblador[1]. Los nombres de los ficheros pueden aparecer en cualquier orden. En el siguiente apartadoaparece un resumen de opciones; antes de ello daremos algunos ejemplos. Ejemplo 1:
cc pepe.c

Si pepe.c es un fichero fuente en C, se compila y se enlaza con las bibliotecas del sistema. Si no había errores sintácticos ni referencias a funciones o variables inexistentes, se genera el ejecutable a.out. Ejemplo 2:
cc -o pepe main.c utilidades.c pepe.o -lm

Guía de Programación en C y UNIX...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • C++ Guia Para Programacion
  • Guia de programacion c++
  • programación c++
  • programacion C
  • Programacion c++
  • c# Programacion
  • Programacion En C#
  • Programacion en c

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS