Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!rutgers!ames!lll-tis!ptsfa!ihnp4!inuxc!iuvax!pur-ee!uiucdcs!uiucdcsb!johnston From: johnston@uiucdcsb.cs.uiuc.edu Newsgroups: comp.lang.c Subject: Re: help with declaration Message-ID: <165600003@uiucdcsb> Date: Fri, 19-Jun-87 14:46:00 EDT Article-I.D.: uiucdcsb.165600003 Posted: Fri Jun 19 14:46:00 1987 Date-Received: Mon, 22-Jun-87 05:35:30 EDT References: <8286@ut-sally.UUCP> Lines: 31 Nf-ID: #R:ut-sally.UUCP:8286:uiucdcsb:165600003:000:666 Nf-From: uiucdcsb.cs.uiuc.edu!johnston Jun 19 13:46:00 1987 Try this: extern int (*getmenu())(); Explanation: int X (); - X is a function returning int. int (*X )(); - X is a pointer to a function returning int. int (*X())(); - X is a function returning a pointer to a function returning int. Alternative preferred by me: typedef int (*FUNC)(); /* FUNC - pointer to a function returning int */ FUNC func; extern FUNC getmenu(); - Gary Johnston Department of Computer Science University of Illinois at Urbana-Champaign 1304 West Springfield Avenue Urbana, IL 61801 Phone: (217) 333-2518 USENET: {pur-ee,convex,ihnp4}!uiucdcs!johnston ARPA: johnston@b.cs.uiuc.edu CSNET: johnston%uiuc@csnet-relay