/* Tietorakenteet ja algoritmit 1999 Esimerkki 2-21 : Pinon toteuttaminen listan päälle. Tässä ratkaisussa ei tarvita yhtään koodiriviä, vaan pino voidaan sisällyttää header(.h)-tiedostona ohjelmaan. 9.9.1999 MM */ #define STACK LIST #define STACK_CREATE(S, D) LIST_CREATE((LIST)S, D) #define STACK_PUSH(S, x) LIST_INSERT((LIST)S, LIST_FIRST(S), x) #define STACK_POP(S) LIST_DELETE((LIST)S, LIST_FIRST((LIST)S)) #define STACK_TOP(S) LIST_RETRIEVE((LIST)S, LIST_FIRST((LIST)S)) #define STACK_EMPTY(S) (int)((LIST_POSITION) \ LIST_FIRST((LIST)S)==(LIST_POSITION)LIST_EOL((LIST)S)?1:0)