Programar em C/Bibliotecas: diferenças entre revisões

[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
Sem resumo de edição
m formatação: <source lang=c>; index: autocat
Linha 9:
 
Chamaremos a biblioteca de '''teste1'''.
<source lang=c>
 
#include <math.h>
Linha 36:
(pow (1 + i, n) - 1));
}
</source>
 
As linhas acima são o arquivo do código da nossa biblioteca. Abaixo está o código de um programa que testará essa biblioteca. Lembre-se de que os dois trechos devem estar em arquivos separados.
 
<source lang=c>
#include <stdio.h>
Linha 64 ⟶ 66:
return 0;
}
</source>
 
Algo que você deve ter notado é que nesse arquivo não demos nenhuma informação sobre as funções ''vf'' e ''rand'' nele usadas. Realmente, se você tentar compilar o código como está, o compilador dará um aviso; mas ao tentar criar o executável, o montador não poderá continuar pois não recebeu nenhuma informação sobre onde as funções estão.
Linha 80 ⟶ 83:
Para fazer nosso próprio cabeçalho, precisamos colocar as declarações das funções disponíveis na biblioteca:
 
<source lang=c>
int rand ();
void init_seed ();
double vf (double, int, double);
</source>
 
Se você se lembra da [[../Pré-processador|última lição]], poderá sugerir que coloquemos algumas linhas a mais:
 
<source lang=c>
#ifndef _TESTE1_H
#define _TESTE1_H
Linha 94 ⟶ 100:
#endif
</source>
 
Agora, sempre que precisarmos usar a biblioteca ''teste1'', basta incluir o arquivo ''teste1.h'' no início do nosso programa:
 
<source lang=c>
#include "teste1.h"
</source>
 
Note que se o cabeçalho estiver instalado nos diretórios padrão do compilador ou do sistema, você deve trocar as aspas pelos sinais de menor/maior (< ... >).
Linha 130 ⟶ 139:
Note que nesse caso simplesmente especificamos os arquivos que devem ser montados. O diretório de procura pode ser especificado pela opção <tt>/libpath:''diretório''</tt>.
 
[[Categoria:Programar em C|B]]
{{TopNav|up=Índice|prev=Pré-processador|next=Gravação e leitura em arquivos}}
 
{{AutoCat}}