> This is what is known as 'prototyping'. What this means is you let a
> function or a file know that an external function exists. Alternately,
> you could use:
> void hunt_victim();
> If you change the structure of the parameters anywhere, using this
> example keeps you from having to redefine prototypes. This, of course,
> isn't true if you change the returned data structure or the name.
> It seems obvious to some, not so obvious to others. It's good you
> brought that up, however.
Hmm.. A prototype like that would 'eliminate' warnings, or?
If you prototype with void hunt_victim() you havent specified the arguments.
Lets say the function is defined like this ;
void hunt_victim(char *, struct char_data *)
{
/* Some code */
}
And you call the the function like this;
char *string;
struct char_data *ch;
hunt_victim(ch, string);
...
Note that the arguments are switched.
Now my question is, will the compiler complain at the function-call or
will it just let it slip?
>From what I've learned, the prototype is the one the compiler use for detecting
faults, and the prototype allows any kind of arguments, but the function dont.
// Ziggur @ BlueMage
This archive was generated by hypermail 2b30 : 12/18/00 PST