À medida que nossos programas vão crescendo, é necessário "quebrá-los" em partes,
pedaços ou partes menores. Essa organização é necessária para uma melhor manutenção,
organização e reuso.
A linguagem C permite que possamos dividir nossos programas em partes criando nossos
arquivos .c e .h, de acordo com suas responsabilidades.
Como exemplo, vamos criar uma calculadora simples criando os seguintes arquivos:
- calculadora.c: contém nossas funções aritméticas
- calculadora.h: contém protótipos de funções
- main.c: arquivo principal que irá utilizar calculadora.c e calculadora.h
Em nosso arquivo calculadora.h, vamos declarar os protótipos das funções de nossa
calculadora como mostrado no exemplo abaixo:
Ex 1: calculadora.h
//includes vem aqui
int adicao(int a, int b);
int subtracao(int a, int b);
int multiplicacao(int a, int b);
int divisao(int a, int b);
//outras funções
Em nosso arquivo calculadora.c, vamos implementar as funções de nossa calculadora
como mostrado no exemplo abaixo:
Ex 2: calculadora.c
//includes vem aqui
int adicao(int a, int b)
{
return a + b;
}
int subtracao(int a, int b)
{
return a - b;
}
int multiplicacao(int a, int b)
{
return a * b;
}
int divisao(int a, int b)
{
return a / b;
}
A inclusão da cabeçalho(header) de nossa biblioteca, calculadora.h, é
feita utilizando a diretiva #include como na sintaxe abaixo. Essa diretiva pode ser vista em
C Diretiva: #include.
Sintaxe
#include "calculadora.h"
Após a inclusão do cabeçalho calculadora.h, podemos utilizar as funções
contidas em calculadora.c como pode ser visto no trecho de código abaixo:
main.c
//main.c
#include <stdio.h>
#include "calculadora.h" //uso: adicao, substracao,multiplicacao e divisao
int main()
{
printf("%d\n",adicao(1,2));
printf("%d\n",subtracao(1,2));
printf("%d\n",multiplicacao(1,2));
printf("%d\n",divisao(1,2));
}
Saída
3
-1
2
0
Diferente das bibiotecas nativas da linguagem C, as bibliotecas criadas pelo usuário
devem ser incluindos entre ("). Caso sejam criadas em subpastas, essas devem ser
informadas utilizando (/) para formar completo até o arquivo incluído.
//main.c
#include "calculadora.h"
Saída
3
-1
2
0