C parameter doubt


square(void* noName, int arg) 
{
    // code...
}

void* is a null pointer isn’t it?
Why give the argument a null pointer?

With the about code calling square(5) is valid. So what other reason is there to give it 2 arguments.
What might be the use of the first argument?

Is it similar to what we do in as like [FONT=“Courier New”]function foo(myVar:SomeVar=null, num:int):void[/FONT] ?

Taking some interest in C lately :stuck_out_tongue: