By popular request, and since many of you have never seen a goto before, here is how to write a for loop using only if's and goto's:
#include <stdio.h> int main( void ) { int i; #if 0 for (i = 0; i < 64; ++i) { printf ("%x\n", 0xdeadbeef >> i); } #endif i = 0; loop: if (i >= 64) { goto loop_break; } printf ("%x\n", 0xdeadbeef >> i); ++i; goto loop; loop_break: return 0; }
Also, here is a link to the latest (as of this posting) revision of the C99 standard:
http://www.open-std.org/jtc1/sc22/WG14/www/docs/n1256.pdf
It is the real McCoy and is more comprehensive than the K&R book, although less user friendly.