I've been programming a few months. Basically, I've been looking at some code for this bot in Quake 2 recently, and I've noticed that at one point in the code for it, in p_client.c, a function is declared with three arguments:
Yet in a header file, oak.h, it's declared with 2 arguments, ie
void SelectSpawnPoint (edict_t *ent, vec3_t origin, vec3_t angles)
And then in another source file, it's called with 2 arguments:
void SelectSpawnPoint(vec3_t origin, vec3_t angles);
So what's going on? I thought once you'd declared your function, it had a set number of arguments to it?