Foros del Web » Programación para mayores de 30 ;) » Programación General »

Lista enlazada en C

Estas en el tema de Lista enlazada en C en el foro de Programación General en Foros del Web. Hola a todos. Tengo que hacer un programa de gestión para el módulo que estudio. Se trata de un hotel con 10 habitaciones que tengo ...
  #1 (permalink)  
Antiguo 09/04/2002, 06:33
 
Fecha de Ingreso: enero-2002
Mensajes: 417
Antigüedad: 22 años, 3 meses
Puntos: 0
Lista enlazada en C

Hola a todos. Tengo que hacer un programa de gestión para el módulo que estudio. Se trata de un hotel con 10 habitaciones que tengo que inicializar dinámicamente al inicio del programa. Esta es mi estructura:

struct Habitacion {
char nombre[30];
int dias, PrecioDia, descuento, ocupada;
struct Habitacion *sig;
}

Y pongo un puntero para almacenarme siempre la dirección de la primera posicion:

struct Habitacion *Hotel;

Pues bien, inicializa todas las posiciones con:

ptr=(struct Habitacion *)(malloc(sizeof(struct Habitacion)))
Hotel=ptr;
(*ptr).ocupada=0;
aux=NULL; (siendo aux otra variable del mismo tipo, struct Habitacion)
(*ptr).sig=aux;
ptr=(*ptr).sig;

Esto sería la primera inicialización y el resto iría dentro de un for.
Pues no me funciona, me asigna siempre la misma dirección de memoria (lo miro en cada paso con cout<<&ptr) y (*ptr).sig, aux y ptr tienen distintas direcciones asignadas las 3, habiéndolas igualado anteriormente. ¿COmo puede ser esto? ¿Alguna solución?

Perdonad por este rollo. Ciaoo.
  #2 (permalink)  
Antiguo 11/04/2002, 13:07
 
Fecha de Ingreso: abril-2002
Mensajes: 2
Antigüedad: 22 años
Puntos: 0
Re: Lista enlazada en C

Enviame el codigo fuente con el for incluido.
yo lo veo con gusto.

atte,

Oscar O.
[email protected]
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:19.