Compilando o código abaixo no codeblocks obtenho o erro undefined reference to... para todas as funções
Alguém consegue me ajudar?
#include <stdio.h>
#include <stdlib.h>
struct tipopilha {
char dado;
struct tipopilha *prox;
} ;
/* Cabeçalho de funções*/
void InicializaPilha (struct tipopilha **pilha);
void InserePilha(struct tipopilha **pilha, char dadonovo);
char RetiraPilha(struct tipopilha **pilha);
void ConversaoParaPosFixada ();
int Prioridade (char c1);
void InicializaPilha (struct tipopilha **pilha) {
*pilha = NULL;
return ;
}
void InserePilha(struct tipopilha **pilha, char dadonovo) {
struct tipopilha *p1;
p1 = malloc (sizeof (struct tipopilha));
p1->dado = dadonovo;
p1->prox = *pilha;
*pilha = p1;
return;
}
char RetiraPilha(struct tipopilha **pilha) {
struct tipopilha *p1;
char car;
p1 = *pilha;
*pilha = p1->prox;
car = p1->dado;
free (p1);
return car;
}
void ConversaoParaPosFixada () {
struct tipopilha *p1;
struct tipofila *f1;
char c, aux;
FILE *arq;
}
int Prioridade (char c1) {
switch (c1) {
case '^' : return 1; break;
case '*' : case '/' : return 2; break;
case '+' : case '-' : return 3; break;
case '(' : return 4; break;
}
}
int main(){
struct tipopilha *f1, *p1;
char c, aux;
FILE *arq;
InicializaPilha (p1);
InicializaFila (&f1);
arq = fopen ("t8.txt", "r");
while ((c = getc (arq)) != EOF) {
if (c != '\n'){
if ((c!='^')&&(c!='+')&&(c!='-')&&(c!='*')&&(c!='/')&&(c!='(')&&(c!=')'))
InsereFila (&f1, c);
else
if (c==')') {
while (TopoPilha(p1) != '(')
InsereFila (&f1, RetiraPilha (&p1));
aux = RetiraPilha (&p1);
}
else {
if ((c!='(') && (!PilhaVazia (p1))){
while ((Prioridade (TopoPilha (p1)) <= Prioridade (c))&&(!PilhaVazia (p1)))
InsereFila (&f1, RetiraPilha (&p1));
InserePilha (&p1,c);
}
}
}
}
fclose (arq);
while (!PilhaVazia (p1))
InsereFila (&f1, RetiraPilha (&p1));
while (!FilaVazia (f1))
printf ("%c", RetiraFila (&f1));
return 0;
}