#include <stdio.h>
#include <stdlib.h>
typedef int Elem;
typedef struct stack {
Elem e;
struct stack *next;
} Stack;
Elem pop(Stack **s) {
if (*s
==NULL
) exit(EXIT_FAILURE
); Stack* help = *s;
Elem e = help->e;
*s = (*s)->next;
return e;
}
void push(Stack **ss, Elem elem) {
Stack *help;
help->e = elem;
help->next = *ss;
*ss = help;
}
int main()
{
Stack *s = NULL;
push(&s, 10);
push(&s, 12);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCnR5cGVkZWYgaW50IEVsZW07Cgp0eXBlZGVmIHN0cnVjdCBzdGFjayB7CiAgRWxlbSBlOwogIHN0cnVjdCBzdGFjayAqbmV4dDsKfSBTdGFjazsKCkVsZW0gcG9wKFN0YWNrICoqcykgewogICAgaWYgKCpzPT1OVUxMKSBleGl0KEVYSVRfRkFJTFVSRSk7CiAgICBTdGFjayogaGVscCA9ICpzOwogICAgRWxlbSBlID0gaGVscC0+ZTsKICAgICpzID0gKCpzKS0+bmV4dDsKICAgIGZyZWUoaGVscCk7CiAgICByZXR1cm4gZTsKfQoKdm9pZCBwdXNoKFN0YWNrICoqc3MsIEVsZW0gZWxlbSkgewogICBTdGFjayAqaGVscDsKCiAgIGhlbHAgPSBtYWxsb2Moc2l6ZW9mKFN0YWNrKSk7CiAgIGhlbHAtPmUgPSBlbGVtOwogICBoZWxwLT5uZXh0ID0gKnNzOwogICAqc3MgPSBoZWxwOwp9CgppbnQgbWFpbigpCnsKICAgIAlTdGFjayAqcyA9IE5VTEw7CiAgICAgICAgcHVzaCgmcywgMTApOwogICAgICAgIHB1c2goJnMsIDEyKTsKCiAgICAgICAgcHJpbnRmKCIlZFxuIiwgcG9wKCZzKSk7CiAgICAgICAgcHJpbnRmKCIlZFxuIiwgcG9wKCZzKSk7CgoJcmV0dXJuIDA7Cn0=