[comp.lang.c] nested function prototypes

Schauble@MIT-Multics.arpa (Paul Schauble) (08/06/87)

Does the ANSI standard allow for nested function prototypes? For
example,


    int fa(int, int, char (*)(char *, int) );
  or
    int (*fa(char *))(int, char);

   Paul
      Schauble
         at MIT-Multics.ARPA

drw@cullvax.UUCP (Dale Worley) (08/08/87)

Schauble@MIT-Multics.arpa (Paul Schauble) writes:
> Does the ANSI standard allow for nested function prototypes?

Yes.  They make more definitive the function types involved in
building the outer function type.  Thus, your example

	int (*fa(char *))(int, char);

declares fa to be

	function with pointer to char argument returning
	pointer to
	function with int and char arguments returning
	int

(Boy, those are tough to read!)

Dale
-- 
Dale Worley	Cullinet Software		ARPA: cullvax!drw@eddie.mit.edu
UUCP: ...!seismo!harvard!mit-eddie!cullvax!drw
OS/2: Yesterday's software tomorrow	    Nuclear war?  There goes my career!