El compilador GNU se invoca con el comando gcc. De manera predeterminada este comando preprocesará, compilará y en enlazará un programa de C. Existen muchas opciones para el gcc, y entre ellas existen controles que permiten ejecutar solo alguna fase de la secuencia proceso/compilación/enlace.
Ejemplo:
Ejemplo:
// Programa que lea 5 numeros y sacar la media//
Código:
#include <stdio.h> // libreria estandar//
int n1,n2,n3,n4,n5; // declaracion de las variables//
float M;
float media(int a, int b, int c, int d, int e);
**Este tipo de archivo de extension: h, significa header, o sea cabecera, que es un archivo para ayudar a compilar mejor, ya que se usa para declarar, tanto las librerias a usar en el programa, como las funciones que haya distintos archivos, de una sola vez y antes de nada; para que no haya conflictos de recursividad**
Código:
// main.c //* GCC
#include "main.h" // librería de matematica//
int main()
{
printf("Introduce 5 numeros para hacer su media\n"); // llamada de las variables//
scanf("%i",&n1);
printf("\n");
scanf("%i",&n2);
printf("\n");
scanf("%i",&n3);
printf("\n");
scanf("%i",&n4);
printf("\n");
scanf("%i",&n5);
M = media(n1,n2,n3,n4,n5); // fórmula para el promedio //
printf("\n La media es %.2f\n",M);
system("PAUSE");
return 0;
}
#include "main.h" // librería de matematica//
int main()
{
printf("Introduce 5 numeros para hacer su media\n"); // llamada de las variables//
scanf("%i",&n1);
printf("\n");
scanf("%i",&n2);
printf("\n");
scanf("%i",&n3);
printf("\n");
scanf("%i",&n4);
printf("\n");
scanf("%i",&n5);
M = media(n1,n2,n3,n4,n5); // fórmula para el promedio //
printf("\n La media es %.2f\n",M);
system("PAUSE");
return 0;
}
Si lo compilas, el resultado es el mismo, y para comprobarlo, compilalo. Hasta ahora no he enseñado a compilar usando varios archivos asi que doy una alternativa por cada SO.
Para Linux (Ubuntu):
Creo que hay poco que decir al respecto, la línea que nos interesa es:
Código:
gcc main.c main.h media.c -o main
El orden es:
Código:
gcc [objetos] [modo] [resultado] [liberias]
Puedes poner tantas funciones como quieras en archivos externos, pero siempre deben estar declaradas en una cabecera (main.h) que debe ser leida previamente a main.c, ya que para usar una función hay que declararla previamente. En los archivos separados, definimos las funciones, y lo que se suele hacer es una cabecera como la nuestra donde se declaren antes de empezar todas las funciones externas, para evitar conflictos.
No hay comentarios:
Publicar un comentario