Link Search Menu Expand Document

Programas escritos con multiples unidades de compilacion

Hasta ahora…

class="c"> // hola.c #include int main(void) { printf("Hola, mundo!"); return 0; } </code></pre> Para compilar:

$ gcc hola.c -o hola
$ ./hola
Hola, mundo!%
$
Alcanza con una sola unidad de traducción o archivo .c ¿programas más grandes? ### Un ejemplo Vamos a construir el verificador de palíndromos. Un palíndromo es una cadena que se puede leer en los dos sentidos y se lee igual. Lo que también llamos capicúa. ### El verificador Vamos a construir una función que permita decidir si una cadena es palíndromo.

int es_palindromo(const char *cadena);
Si cadena es un palíndromo retorna 1, sino 0. Las mayúsculas y las minúsculas son distintas. ### Vamos a construir - la interfaz para poder usarlo en nuestros programas - una serie de tests - una implementación ### Modularización de los componentes en C - headers files $ \rightarrow $ .h - unidades de traducción $ \rightarrow $ .c ### Headers files Las importamos con el la directiva #include del pre-procesador Inlcuyen constantes, signature de funciones Ya las venimos usando , ### La interfaz del verificador Usamos los headers files para exponer la interfaz a los usuarios de nuestras bibliotecas.

// palindromo.h
#ifndef __PALINDROMO_H__
#define __PALINDROMO_H__

int es_palindromo(const char *cadena);

#endif