codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
#define CGOTO(label) { _dispatch = (label); goto _dispatcher; } #define BEGIN_CGOTO int _dispatch=-1; _dispatcher: switch (_dispatch) { case -1:; #define END_CGOTO } int main() { enum { a, b, end }; static int states[] = { a, b, a, end }; int i = 0; BEGIN_CGOTO CGOTO(states[i++]); case a: printf("a\n"); CGOTO(states[i++]); case b: printf("b\n"); CGOTO(states[i++]); case end:; END_CGOTO }
Private
[
?
]
Run code
Submit