segunda-feira, 27 de janeiro de 2014

Linguagem C - Utilizando funções de outro arquivo .c

Olá pessoal,

me deparei com uma dúvida esse semana em relação a programação em C, tenho pouco conhecimento na linguagem, mais agora estou precisando estuda-lá. Em java consigo facilmente utilizar funções que estão em outro arquivo java, por exemplo, tenho o arquivo1.java e preciso utilizar alguma função do arquivo2.java. Mais como fazer isso em C???

Vamos para a solução:
- Vamos supor que temos 2 arquivos, arq1.c e arq2.c e que em arq2.c temos uma função que deve ser utilizada em arq1.c
- Quais passos devemos seguir?


  1. Criar um terceiro arquivo onde sua extensão deve ser .h (exemplo lib.h)
  2. Dentro desse arquivo lib.h devemos colocar todos os prototipos* das funções que são utilizadas dentro de arq2.c
  3. Dentro do arquivo arq2.c deve ser mantida a função completa. 
  4. Dentro dos dois arquivos arq1.c e arq2.c coloque lá em cima nos includes o seguinte código: #include "lib.h" (note que deve ser com aspas).

*protótipo de função é a declaração da função, por exemplo:

a função abaixo:
void soma() {
   a = b + c;
}

O seu protótipo será a primeira linha, mas ao invés da chave, terá ponto e vírgula, assim:
void soma();


Nosso código ficaria dessa forma:

arq1.c

#include"lib.h"

int main(){
imprimir();
return 0;
}


arq2.c

#include"lib.h"
#include<stdio.h>


void imprimir(){
printf("teste");
}

lib.h

void imprimir();

Nenhum comentário:

Postar um comentário