code optimisation - stuck.

Osgeld:
im C-tarded but I am pretty sure if you dont return it just returns null or zero (neither is == to 1)

No, it returns whatever value just happens to be in the register that return values are returned in when the function exits. Different compilers and different levels of optimization wll change what it returns.

When talking about C, I tend to say that some languages go out of the way to protect you from hanging yourself, while C will happily drive to the hardware store, get some rope, make a hangman's noose, and give it to you, saying have fun.