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);
}
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Instalar o Microsoft Edge no Slackware 15
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
Programa duplicado no "Abrir com" e na barra de pesquisa do ... (2)
Interface gráfica não funciona (2)