So you can either provide a pointer to a variable where the result is stored or a null pointer. Either way the result is the current time, hence usually a null pointer is provided
The point is that time(NULL) will return a different numerical value every time you run your program. It's a way of making sure that you're always seeding the randomizer with a different number every time.