Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #define DeclararLista(def_estructura, nom_lista) struct def_lista{ def_estructura *actual; struct def_lista *siguiente;} nom_lista = {NULL, NULL};
- #define AgregarALista( lista, estructura ) if( lista.actual == NULL) { lista.actual = &estructura;} else { struct def_lista *lista_temporal = &lista; struct def_lista lista_siguiente ={NULL,NULL} ; while(lista_temporal->siguiente != NULL) lista_temporal = lista_temporal->siguiente; lista_temporal->siguiente = &lista_siguiente; lista_siguiente.actual = &estructura; } ;
- struct Rabanito
- {
- int A;
- int B;
- };
- int main()
- {
- struct Rabanito rabanito_verde = {11,12};
- struct Rabanito rabanito_rojo = {4444,8888};
- DeclararLista(struct Rabanito, lista_rabanitos);
- AgregarALista(lista_rabanitos, rabanito_verde);
- AgregarALista(lista_rabanitos, rabanito_rojo);
- AgregarALista(lista_rabanitos, rabanito_verde); /* agrego otra vez el verde a la lista*/
- printf("valor A: %u\n",lista_rabanitos.actual->A); /*rabanito verde*/
- printf("valor A: %u\n",lista_rabanitos.siguiente->actual->A); /*rabanito rojo*/
- printf("valor A: %u\n",lista_rabanitos.siguiente->siguiente->actual->B); /*rabanito verde*/
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement