When declaring variables in C you can omit the type sometimes if you want to declare an int.
Why does omitting explicit \'int\' type for a parameter fai
The compiler is employing one of two grammars.
When applying the K&R grammar, undeclared parameters are allowed, and default to ints.
When applying the non-K&R grammar, all parameters must comply with the parameter declaration syntax i.e. declared with types and names.
You invoke one or the other by choosing the corresponding declaration style.