<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
Hola, que tal.<br><br>Estoy estudiando sobre estructuras de datos, y me pidieron que guardara datos en una pila dinámica.<br>El problema es que no sé si estoy declarando funciones y valores como debería, ya que cuando compilo mi programa con NetBeans, me aparece un error que dice lo siguiente:<br><br>Error while dumping state (Probably corrupted stack).<br><br>¿En qué está mal mi código?<br><br><br>#include <stdio.h><br>#include <stdlib.h><br><br>struct Pila<br>{<br> char dato;<br> struct Pila *base;<br>};<br><br>typedef struct Pila Pila;<br><br>int push(Pila *a, char d);<br>char pop (Pila *a);<br>int empty(Pila *a);<br><br>int main()<br>{<br> Pila *a;<br> a=NULL;<br> char d='a';<br> if(push(&a,d)) //Por el momento solo guardo un solo valor.<br> printf("\nValor guardado: %c",a->dato);<br> else<br> printf("\nValor no guardado\n");<br> printf("\n\n\t");<br> return 0;<br>}<br><br>int push(Pila *a, char d)<br>{<br> Pila *aux;<br> aux=(Pila*)malloc(sizeof(Pila));<br> if(aux!=NULL)<br> {<br> aux->dato=d;<br> aux->base=a;<br> a->base=aux;<br> return 1;<br> }<br> return 0;<br>}<br><br>char pop (Pila *a)<br>{<br> char d=a->dato;<br> Pila *aux;<br> aux=(Pila*)malloc(sizeof(Pila));<br> aux=a->base;<br> free(a);<br> a->base=aux;<br> return d;<br>}<br><br>int empty(Pila *a)<br>{<br> if(a==NULL)<br> return 1;<br> return 0;<br>}<br> <br /><hr />¿Te falta espacio para tus correos? <a href='www.hotmailhotness.com.mx' target='_new'>Enciende tu hotness con Hotmail</a></body>
</html>