Commit a440e74d authored by Víctor Fernandes Gandara's avatar Víctor Fernandes Gandara
Browse files

Reestruturei o .h e o .c para que eles fossem compiláveis. Também coloquei um...

Reestruturei o .h e o .c para que eles fossem compiláveis. Também coloquei um arquivo .c e executável que demonstram a inclusão deste header externo. Ele também é compilável, apesar de fazer virtualmente nada. Coloquei também o arquivo usage.txt onde tem uma pequena explicação de como é feito o uso desse header. Ele é mais pra eu me guiar do que realmente um guia.
parent 78399532
/* #include "CPDigiStorage.h" */
#include <stdio.h>
void process_event()
{
char *data_message = build_data_string();
queue_data(data_message); /*Envia o string de dados para a fila. Precisaremos incluir neste arquivo o CPDigiQueue.h para poder fazer o chamamento desta função*/
store_data(data_message); /*Faz a escrita de 'data_message' no cartão SD. Precisaremos incluir neste arquivo o CPDigiStorage.h para poder fazer o chamemento desta função*/
}
char *data = "dados";
char build_data_string()
char *build_data_string()
{
/*Monta um string com os dados necessários (valor da pmt, tempo, temperatura, umidade, localização) a partir de variáveis globais do programa*/
return "dados";
return data;
}
void process_event()
{
char *data_message = build_data_string();
/* queue_data(data_message); está comentado pois não seria compilável, uma vez que ainda não temos um header com esta função*/
/*Envia o string de dados para a fila. Precisaremos incluir neste arquivo o CPDigiQueue.h para poder fazer o chamamento desta função*/
/*store_data(data_message); está comentado pois não seria compilável, uma vez que ainda não temos um header com esta função*/
/*Faz a escrita de 'data_message' no cartão SD. Precisaremos incluir neste arquivo o CPDigiStorage.h para poder fazer o chamemento desta função*/
}
#include <stdio.h>
#include "CPDigiMain.h"
int main()
{
process_event();
}
Este arquivo serve somente para me guiar na estruturação do header e deixar claro a função dos arquivos.
"CPDigiMain.h" me parece ser o arquivo que o compilador usa pra buscar as funções em si
Já "CPDigiMain.c" me parece ser onde fica o código destas funções em si
Desta maneira, quando lemos "teste.c", podemos ver que ao usar
> #include "CPDigiMain.h"
estamos incluindo no programa todas as funções presentes em "CPDigiMain.h", sendo que elas executarão aquilo que está em "CPDigiMain.c"
para compilarmos o programa, no entanto, temos que usar o seguinte comando:
> gcc -o teste teste.c CPDigiMain.c
para que o compilador entenda onde procurar as funções do header externo
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment