|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T l
Length: 780 (0x30c) Types: TextFile Names: »list.c«
└─⟦b20c6495f⟧ Bits:30007238 EUUGD18: Wien-båndet, efterår 1987 └─⟦this⟧ »EUUGD18/General/Kriegspiel/list.c«
/* list.c */ #include "constants.h" #include <curses.h> struct IN { int i; struct IN *n; }; typedef struct IN *LIST; LIST linsert (list, number) LIST list; int number; { LIST cell; char *malloc (); cell = (LIST) malloc (sizeof (struct IN)); cell->i = number; cell->n = list; return cell; } LIST lmember (number, list) int number; LIST list; { while (list != NIL) { if (list->i == number) return list; list = list->n; } return FALSE; } llength (list) LIST list; { int i; i = 0; while (list != NIL) { i++; list = list->n; } return i; } lfront (sublist, list) LIST sublist, list; /* both must be non-NIL */ /* Allows easy deletion, when combined with lmember. Violent. */ { int n; n = list->i; list->i = sublist->i; sublist->i = n; }