CURSO DE C

Arquivos-Cabeçalhos

Arquivos-cabeçalhos são aqueles que temos mandado o compilador incluir no início de nossos exemplos e que sempre terminam em .h. A extensão .h vem de header (cabeçalho em inglês). Já vimos exemplos como stdio.h, conio.h, string.h. Estes arquivos, na verdade, não possuem os códigos completos das funções. Eles só contêm protótipos de funções. É o que basta. O compilador lê estes protótipos e, baseado nas informações lá contidas, gera o código correto. O corpo das funções cujos protótipos estão no arquivo-cabeçalho, no caso das funções do próprio C, já estão compiladas e normalmente são incluídas no programa no instante da "linkagem". Este é o instante em que todas as referências a funções cujos códigos não estão nos nossos arquivos fontes são resolvidas, buscando este código nos arquivos de bibliotecas.

 Se você criar algumas funções que queira aproveitar em vários programas futuros, ou módulos de programas, você pode escrever arquivos-cabeçalhos e incluí-los também.

Suponha que a função 'int EPar(int a)', do segundo exemplo da página c720.html seja importante em vários programas, e desejemos declará-la num módulo separado. No arquivo de cabeçalho chamado por exemplo de 'funcao.h' teremos a seguinte declaração:

int EPar(int a);

O código da função será escrito num arquivo a parte. Vamos chamá-lo de 'funcao.c'. Neste arquivo teremos a definição da função:

int EPar (int a)
{
if (a%2)                /* Verifica se a e divisivel por dois */
        return 0;
else
        return 1;
}

Por fim, no arquivo do programa principal teremos o programa principal. Vamos chamar este arquivo aqui de 'princip.c'.

#include <stdio.h>
#include "funcao.h"   
void main ()
{
	int num;
	printf ("Entre com numero: ");
	scanf ("%d",&num);
	if (EPar(num))
        	printf ("\n\nO numero e par.\n");
	else
        	printf ("\n\nO numero e impar.\n");
}

Este programa poderia ser compilado usando a seguinte linha de comando para o gcc:

gcc princip.c funcao.c -o saida

onde 'saida' seria o arquivo executável gerado.

Para gerar o executável deste programa no Rhide você deve criar um projeto, com a opção Project -> Open. Digitar um nome para o seu projeto (por exemplo saida). Ao apertar OK, o Rhide criará uma janela de projeto, onde você deverá adicionar os arquivos que serão usados para compor o seu executável. Para isto, você deve apertar a tecla <Insert> e em seguida escolher os arquivos princip.c e funcao.c . Daí, é só mandar compilar o projeto, com a opção Compile -> Make. Se não der erro, pode executar!


AUTO AVALIAÇÃO

Veja como você está:
  Escreva um programa que faça uso da função EDivisivel(int a, int b), criada na página c720.html. Organize o seu programa em três arquivos: o arquivo prog.c , conterá o programa principal; o arquivo func.c conterá a função; o arquivo func.h conterá o protótipo da função. Compile os arquivos e gere o executável a partir deles.


 

Página Anterior Índice da Aula Próxima Página


Curso de C do CPDEE/UFMG - 1996 - 1999