In short because C is a free format language, whatever style you choose its ok while the parser can make a distinction of each token.
Please consider that in your case even:
char*f(){}
It's perfectly equivalent top the other 2.
This peculiarity of C lead to a very special type of contest called
C obfuscation contest[
^]. This site will give you much more answers that all other links together... ;-)