Enviado em 01/11/2017 - 11:51h
Estou fazendo um trabalho pra faculdade, estou tentando usar headers pra não colocar todas as funções no msm arquivo, porém quando compilo o arquivo principal o compilador diz que eu fiz uma referência indefinida as funções que deveriam ter sido importadas do header, segue os códigos:#include <stdio.h>
#include <stdlib.h>
#include "fila.h"
typedef struct{
void* *vetor;
int tamanho;
int ocupacao;
} VDFila;
VDFila criarFila(){
VDFila fila;
fila.tamanho = 2;
fila.ocupacao = 0;
fila.vetor = malloc(sizeof(void*)*fila.tamanho);
return fila;
}
void enfileirar(VDFila *fila, void* elemento){
if (fila->tamanho == fila->ocupacao){
fila->tamanho = fila->tamanho*2;
fila->vetor = realloc(fila->vetor, sizeof(void*)*fila->tamanho);
}
fila->vetor[fila->ocupacao] = elemento;
fila->ocupacao++;
}
void desenfileirar(VDFila *fila){
for (int i = 0; i < (fila->ocupacao - 1); i++){
fila->vetor[i] = fila->vetor[i+1];
}
fila->ocupacao--;
}
void primeiroInt(VDFila *fila){
int *i;
i = fila->vetor[0];
printf("%d\n", *i);
}
void primeiroDouble(VDFila *fila){
double *i;
i = fila->vetor[0];
printf("%.3lf\n", *i);
}
void ultimoInt(VDFila *fila){
int *i;
i = fila->vetor[fila->ocupacao - 1];
printf("%d\n", *i);
}
void ultimoDouble(VDFila *fila){
double *i;
i = fila->vetor[fila->ocupacao - 1];
printf("%.3lf\n", *i);
}
void comprimento(VDFila *fila){
printf("%d\n", fila->ocupacao);
}
void vazia(VDFila *fila){
if(fila->ocupacao == 0){
printf("verdadeiro");
}else{
printf("falso");
}
}
typedef struct{
void* *vetor;
int tamanho;
int ocupacao;
} VDFila;
VDFila criarFila();
void enfileirar(VDFila *fila, void* elemento);
void desenfileirar(VDFila *fila);
void primeiroInt(VDFila *fila);
void primeiroDouble(VDFila *fila);
void ultimoInt(VDFila *fila);
void ultimoDouble(VDFila *fila);
void comprimento(VDFila *fila);
void vazia(VDFila *fila);
#include <stdio.h>
#include <stdlib.h>
#include "fila.h"
void main(){
int *x;
VDFila fila = criarFila();
x = malloc(sizeof(int));
scanf("%d", x);
enfileirar(&fila, x);
int *i;
i = fila.vetor[0];
printf("%d\n", *i);
}
Atenção a quem posta conteúdo de dicas, scripts e tal (6)
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
O mínimo que você precisa saber sobre o terminal (parte 2)
O mínimo que você precisa saber sobre o terminal (parte 1)
Como iniciar uma máquina virtual do VirtualBox automaticamente no boot do LUbuntu 18 LTS
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Como deixar as abas do Firefox mais fininhas
Mudar o gerenciador de login (GDM para SDDM)
"Tentando" fazer com que programas rodem no Wayland e no X11
Utilização sistema operacional - Linux (1)
Impressora SAMSUNG não habilita/impr... (0)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta