#include #define read(x) scanf("%d",&x) #define write(x) printf("%d\n",x) #define Start() int finished=false; int r=1; while(!finished) { switch(r) { case 0: finished=true; break; #define Label(x) case x: #define Goto(x) r=x; break; #define Finish() }} finish: int const N = 100; int main() { int stack[N]; int top = 0; int base; Start(); Label(1); printf("Function main.\n"); Goto(2); Label(3); Goto(0); Label(2); printf("Function foo.\n"); Goto(3); Finish(); }