Criando Arquivos Header e Compilando Programa pelo GCC
Arquivos header são bibliotecas, neles há coleção de funções. É exatamente igual a
Quando o arquivo header está fora desta pasta do compilador, mas na mesma repartição do código que irá utiliza-lo, usa-se aspas duplas, desta forma:
stdio.h
, string.h
e demais bibliotecas comumente utilizadas, nestas a inclusão no arquivo .c é feita com os símbolos <>, #include <stdio.h>
, porque o arquivo stdio.h
está localizado em uma pasta chamada include, que por sua vez está dentro da pasta do compilador.Quando o arquivo header está fora desta pasta do compilador, mas na mesma repartição do código que irá utiliza-lo, usa-se aspas duplas, desta forma:
#include "minhaBiblioteca.h"
. Caso o arquivo esteja em outra pasta, você precisará informar passo-a-passo o caminho entre aspas dupla e usando o / para ir acessando até a pasta de destino do arquivo .h a ser utilizado, como no prompt de comando.Benefícios:
- Reutilização de código. Fica mais fácil depois, em um projeto, reutilizar funções pré feitas e compiladas, não é preciso reimplementá-las.
- Organização. Omitindo a implementação, apenas a lógica utilizada no arquivo principal é vista pelo programador, há menos linhas para analisar. E pressupõe-se, que as funções estão corretas, é bom ponto de partida para achar futuros erros na utilização delas.
- Omissão da implementação das funções, classes e/ou métodos. Com isso, o usuário limita-se à interface da biblioteca, não tem ideia da implementação, e você acaba tendo sigilo sobre a técnica utilizada, que pode ser só sua. Isso também evita alterações indevidas e, de certa forma, usos inapropriados, já que você especifica como usar certa função.
Organização:
No arquivo helloWorld.h você coloca protótipos, variáveis, enfim, declarações. #ifndef HELLOWORLD_H
#define HELLOWORLD_H
void helloWorld();
#endif
No arquivo helloWorld.c você fará as implementações. #include "helloWorld.h"
#include <stdio.h>
void helloWorld(){
printf("Hello World!");
}
E no main.c, o arquivo principal, fará o uso propriamente dito do que foi implementado no arquivo helloWorld.c. #include "helloWorld.c"
int main(void){
helloWorld();
return 0;
}
A compilação de um programa escrito em C é feita resumidamente em duas etapas:
- Compilação: Traduzir cada source (.c) (chamado unidade de tradução) em um objeto (.o)
- Linking: Unir todos os objetos em um programa executável ou biblioteca
gcc -c main.c -o main.o
gcc -c helloWorld.c -o helloWorld.o
gcc main.o helloWorld.o -o helloWorld
Assista ao video e tire suas dúvidas!
Texto retirado de: http://pt.stackoverflow.com
Criando Arquivos Header e Compilando Programa pelo GCC
Reviewed by Dayvid
on
14:45
Rating:
Nenhum comentário