Why does 0! All i know of factorial is that x! Is equal to the product of all the numbers that come before it.

This 0 is then referred to as a null pointer constant. The c standard defines that 0 cast to the type void * is both a null pointer and a null pointer constant. Additionally, to help readability, the macro null is รขโ‚ฌยฆ Inclusion of $0$ in the natural numbers is a definition for them that first occurred in the 19th century. The peano axioms for natural numbers take $0$ to be one though, so if you are working with these รขโ‚ฌยฆ

The peano axioms for natural numbers take $0$ to be one though, so if you are working with these รขโ‚ฌยฆ