Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: GABETORAP en 2 Diciembre 2011, 01:53 am



Título: ¿Por favor,que hace esta funcion?
Publicado por: GABETORAP en 2 Diciembre 2011, 01:53 am
Expliquenme linea  a linea!!
pilaPtr getpila(void)
{
pilaPtr p;
p=(pilaPtr)malloc(sizeof(struct nodo));
if(p != 0)
p->Next = 0;
return (p);
}


Título: Re: ¿Por favor,que hace esta funcion?
Publicado por: Ferno en 2 Diciembre 2011, 01:58 am
1°) El código que introduzcas hazlo entre etiquetas GeSHi en la parte superior derecha en la publicación del mensaje.

Ahora, es una función que devuelve un puntero a una pila, o al menos es lo que deduzco del nombre del tipo.
Se supone que en la parte del código donde se declaran los tipos (typedef) tenés la declaración de pilaPtr el cual debe ser un puntero a una estructura Pila.

Ahora bien, primero, se utiliza memoria dinámica para crear la pila, el programa pide memoria referenciada por la variable p (con el malloc). Se fija si el malloc funcionó (p != 0), y de vuelve el puntero a pila (return(p)).

Espero que se haya entendido.