Ver Mensaje Individual
  #15 (permalink)  
Antiguo 24/10/2010, 23:08
vnvnation
 
Fecha de Ingreso: marzo-2009
Mensajes: 74
Antigüedad: 15 años, 1 mes
Puntos: 1
Respuesta: Error conversion from `TipoPila**' to non-scalar type `TipoPila' requested

Bueno e cambiado mi codigo un poco pero aun me sale error en imprimir

Código C++:
Ver original
  1. #include <iostream.h>
  2. #include <conio.h>
  3. #define MAX 2
  4. #define VACIO -1
  5. typedef int TipoTope;
  6. typedef char TipoElem;
  7. typedef struct TipoPila{
  8.          TipoTope Tope ;
  9.           TipoElem Elementos [MAX];
  10.           };
  11. void InicializarPila (TipoPila *Stack);
  12. int PilaLlena(TipoPila *Stack);
  13. int PilaVacia(TipoPila *Stack);
  14. int Push (TipoPila *Stack,TipoElem Elemen);
  15. int Pop (TipoPila *Stack,TipoElem Elemen);
  16. int Imprimir (TipoPila *Stack);
  17.  main ()
  18. {
  19. system ("color f9");
  20. TipoPila Pila;
  21. TipoElem Elementos;
  22. int opcion1=0;
  23. while (opcion1!='s')
  24. {
  25. cout << "\n\nSELECCIONE UNA OPCION DE LAS SIGUIENTES:";
  26.  cout <<"\n1 Inicializar Pila: \n";
  27.   cout <<"2 Ingresar elementos a la pila: \n";
  28.   cout <<"3 Sacar elementos de la pila: \n";
  29.  cin >> opcion1;
  30.  switch (opcion1)
  31. {
  32.        case 1:
  33.             InicializarPila(&Pila);
  34.        cout<<"Pila inicializada ...\n";
  35.        break;
  36.        case 2:
  37.              if(PilaLlena(&Pila)){
  38.           cout << "\nPila llena!!!!\n";}
  39.            else{
  40.      cout<<"Ingrese elementos a la pila:";
  41.      cin >> Elementos;
  42.      Push(&Pila,Elementos);}
  43.      break;
  44.      case 3:
  45.           if(PilaVacia(&Pila)){
  46.           cout << "\nLa pila esta vacia ingrese elementos primero!!!!\n";
  47.           }
  48.           else{
  49.      Pop(&Pila,Elementos);
  50.      cout <<"\n El elemnto sacado de la pila es: "<<Elementos;
  51.      
  52.      }
  53.      
  54.           break;
  55.          
  56. }}}
  57. //InicializarPila
  58. void InicializarPila(TipoPila *Stack)
  59. {
  60.      Stack->Tope=VACIO;
  61.      }
  62. //PilaLlena
  63. int PilaLlena(TipoPila *Stack)
  64. {
  65.     return (Stack->Tope==MAX);
  66. }
  67. //PilaVacia
  68. int PilaVacia(TipoPila *Stack)
  69. {
  70.  return (Stack->Tope==VACIO);
  71. }
  72. //Push
  73. int Push (TipoPila *Stack,TipoElem Elemen)
  74. {
  75. return (Stack->Tope++);
  76.  }
  77.  //Pop
  78. int Pop (TipoPila *Stack,TipoElem Elemen)
  79. {
  80. return (Stack->Tope--);
  81.  }
  82.  //Imprimir
  83.  int Imprimir (TipoPila *Stack)
  84.  {
  85.   TipoElem Elemen;
  86. while (!PilaVacia(Stack))
  87. {
  88.        Pop (*Stack,&Elemen);
  89.        cout << Elemen;
  90. }          
  91.       }