Boa noite, eu estou estudando c para a faculdade. 
Esta é a primeira vez que eu tento fazer TAD, tentei criar uma pilha e consegui, mas como eu não tenho muita experiencia, vocês teriam alguma dica de como melhora o meu código?  
  
Muito obrigado por qualquer ajuda!  
  
#define _CRT_SECURE_NO_WARNINGS
#define TAMANHO 1000
#include <stdio.h>
#include <stdlib.h>
 
/*Vetor que segura a pilha estatica*/
int pilha[TAMANHO];
int topo;
 
/*Constroi a pilha*/
int contrutor()
{
     /*como zero é o topo do vetor -1 seria a pilha vazia*/
     int topo = -1;
 
     return (EXIT_SUCCESS);
}
 
/*Verifica se a pilha esta vazia*/
int vazio()
{
    int situacao;
 
    if (topo == -1)
    {
    situacao = 1;
    }
    else
    {
     situacao = 0;
    }
 
    return (situacao);
}
 
/*Verifica se a pilha esta cheia*/
    int pilhaCheia()
{
    int situacao;
 
    if (topo == (TAMANHO - 1))
    {
        situacao = 1;
    }
    else
    {
        situacao = 0;
    }
 
    return (situacao);
 
}
 
/*inserir na pilha*/
int push(int valor)
{
/*a função deve inserir na posicao topo*/
    int situacao;
/*verificando se a pilha não esta cheia*/
    if (!pilhaCheia())
    {
         topo++;
         pilha[topo] = valor;
         situacao = 1;
    }
    else
    {
         situacao = 0;
    }
 
    return (situacao);
 
}
 
/*Apaga o topo da pilha*/
int pop()
{
    int  valor;
 
    if (vazio())
    {
        valor = 0;
    }
    else
    {
        valor = pilha[topo];
        topo--;
    }
 
    return (valor); 
}
 
/*Consulta no topo*/
int consulta()
{ 
    int valor;
 
    if (!vazio())
    {
         valor = pilha[topo];
    }
    else
    {
         valor = 0;
    }
 
    return (valor);
}
 
int main()
{
 
    //pilha...
    system("pause >> null");
    return (EXIT_SUCCESS);
}