----------------------------------------- Chapter 1: A Tutorial Introduction ----------------------------------------- Curious, I assumed I'd need the ``gcc`` command for this book. The book uses ``cc``. Looks like ``cc`` is the Unix C compiler, while ``gcc`` ships with the GNU Compiler OS. The book recommends the old style, apparently. ``C99`` recommends that both the ``main`` should be preceded by the explicit return type, and that the argument list should also be explicit. The program builds without them, but you get warnings otherwise. Hence, the ``hello_world.c`` program becomes: .. code:: c :linenos: #include int main(void) { printf("hello, world\n"); } Curiously enough, C doesn't define standards for exit codes. This is platform dependent.