apuntadores y estructuras
bueno estoy intentando hacer eso
struct nodo { long info; nodo *sgte; }
nodo*p //variable apuntada a cabeza de lista
pues bien esto es parte de un programa que maneja una lista definida en esa estructura... para ello usa otro apuntador que va viajando por la lista asignando valores a sus campos.... siendo info el valor y sgte(siguiente) el pauntador a otro campo.
el problema:
necesito hacer 5 listas para lo cual estava pensando en hacer lo siguiente
struct nodo { long info; nodo *sgte; } *nodolista
que equivaldria a esto:
struct nodo { long info; nodo *sgte; } nodolista[n]
como todos sabemos la ventaja de los apuntadores esque son dinamicos... pero no tengo ni idea como viajar o mejor dicho como cambiar de lista.... si me ayudan se los agradesco...
struct nodo { long info; nodo *sgte; }
nodo*p //variable apuntada a cabeza de lista
pues bien esto es parte de un programa que maneja una lista definida en esa estructura... para ello usa otro apuntador que va viajando por la lista asignando valores a sus campos.... siendo info el valor y sgte(siguiente) el pauntador a otro campo.
el problema:
necesito hacer 5 listas para lo cual estava pensando en hacer lo siguiente
struct nodo { long info; nodo *sgte; } *nodolista
que equivaldria a esto:
struct nodo { long info; nodo *sgte; } nodolista[n]
como todos sabemos la ventaja de los apuntadores esque son dinamicos... pero no tengo ni idea como viajar o mejor dicho como cambiar de lista.... si me ayudan se los agradesco...
Hola:
Primero, para no liarnos mucho, te aconsejaria definir un tipo para el nodo, por ejemplo asi
typedef strcut nodo {long info; nodo *sgte} TipoNodo;
Aunque no es necesario, con esto queda todo más sencillo. Si solo tienes una lista
TipoNodo *p;
Si quieres un array, hazlo así
TipoNodo *p [5];
Los apuntadores a cada lista son p[i], es decir p[1], p[2]. Para recorrarles, usa un apuntador auxiliar
TipoNodo *aux;
aux = p[3];
y ahora usas aux como si fuera una lista simple.
Se bueno
Primero, para no liarnos mucho, te aconsejaria definir un tipo para el nodo, por ejemplo asi
typedef strcut nodo {long info; nodo *sgte} TipoNodo;
Aunque no es necesario, con esto queda todo más sencillo. Si solo tienes una lista
TipoNodo *p;
Si quieres un array, hazlo así
TipoNodo *p [5];
Los apuntadores a cada lista son p[i], es decir p[1], p[2]. Para recorrarles, usa un apuntador auxiliar
TipoNodo *aux;
aux = p[3];
y ahora usas aux como si fuera una lista simple.
Se bueno
no quiero hacer arrays ni nada de eso... tengo 6 apuntadoares uno general para como parametro de todo el sistema y los otros 5 para cada uno de las 5 listas... no se como ni donde difinir la estructura ni como hacer lo parametros... no tengo ni idea como hacerlo... es frustrante los punteros de #%&@...
gracias por la ayuda....
gracias por la ayuda....