Our new guy (forget his name, doh!) and I figured out the problem with my loop that would count down, but not terminate. Turns out I was using an unsigned integer for my counter in my for loop and it is always greater than zero (Example 1).
Funny thing is that -Wall didn't catch this. Seems that -Wall could catch this assuming that we want to loop to terminate. Any thoughts? Say the compiler gave a warning, would that mess up the "for (;;)" construct shown in Example 2? brian // Example 1 // Loop never terminates #include <stdio.h> int main() { unsigned int i, num=50; for (i= num ; i >= 0; i--) { printf("%u\n",i); } return 0; } // Example 2 // Purposely never terminates #include <stdio.h> int main() { for (;;) { printf("Hello forever\n"); } return 0; } -- Brian Lavender http://www.brie.com/brian/ "For every complex problem there is an answer that is clear, simple, and wrong." - H. L. Mencken _______________________________________________ vox-tech mailing list vox-tech@lists.lugod.org http://lists.lugod.org/mailman/listinfo/vox-tech