putting the (void) also affects the way compiler generates the code as in C for historical reasons you can call a () function and pass it parameters without the compiler complaining (although -Wall should catch this anyway).