It's also possible to do it like this (which I like and use):
Because it makes it more obvious they are pointers.Code:typedef void (SIG_TYP)(int); typedef void (SIG_ARG_TYP)(int); SIG_TYP* signal(int, SIG_ARG_TYP*);
And for the love of the gods, don't follow this example in that you omit the names of the parameters in the prototypes. Leave the names in.