Foros del Web » Programación para mayores de 30 ;) » C/C++ »

listas enlazadas cerradas

Estas en el tema de listas enlazadas cerradas en el foro de C/C++ en Foros del Web. Queria realizar un array de estructuras de forma que fuese circular, pero me da varios warning en la reserva de memoria y en las asignaciones ...
  #1 (permalink)  
Antiguo 15/02/2011, 13:21
 
Fecha de Ingreso: marzo-2010
Mensajes: 18
Antigüedad: 14 años, 1 mes
Puntos: 0
Pregunta listas enlazadas cerradas

Queria realizar un array de estructuras de forma que fuese circular, pero me da varios warning en la reserva de memoria y en las asignaciones de los for, pero no se me ocurre otra forma, como podría evitarlos??


struct s { //estructura que contiene cada uno de los indices del array
struct s *p; //puntero a la siguiente estructura
int datos[D];
};


void inicializar(int ar[], int R) // funcion para inicializar la estructura
{
int i; //declaracion de variables
struct s *stt = NULL;

for(i=0; i<R; i++)
{
stt = (struct *)malloc(sizeof(struct)); //reserva de memoria
stt->p = (struct *)malloc(sizeof(struct));
ar[i] = *stt; //llenado del array
}
for(i=0; i<R; i++)
{
ar[i].p = ar[i++];
}
ar[R].p = ar[0];

}


muchas gracias!
  #2 (permalink)  
Antiguo 15/02/2011, 15:28
 
Fecha de Ingreso: enero-2008
Mensajes: 229
Antigüedad: 16 años, 2 meses
Puntos: 1
Respuesta: listas enlazadas cerradas

stt = (struct *)malloc(sizeof(struct)); ????

LO CORRECTO SERÍA

stt = (struct s*)malloc(sizeof(struct s)); ????

ANTES DE EMPEZAR CON LISTAS ENLAZADAS DEBERIAS COMPRENDER MEJOR LO QUE ES MEMORIA DINAMICA.
  #3 (permalink)  
Antiguo 15/02/2011, 18:39
Avatar de nup_  
Fecha de Ingreso: noviembre-2010
Mensajes: 265
Antigüedad: 13 años, 5 meses
Puntos: 32
Respuesta: listas enlazadas cerradas

Hola:

Prop, el código q posteas no es para nada una lista circular (aparte de tener varios errores).
Mira en estos links para q te lleves una idea y veas una implementación:
http://c.conclase.net/edd/index.php?cap=004#inicio
http://es.wikipedia.org/wiki/Lista_(...das_circulares
http://www.como-programar.com/2009/0...nteros-en.html

saludos;

Nup_

Etiquetas: listas
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 17:13.