Listing 1: The ANSI function pointers and function prototypes for the NAG C routines.
/* declaration of function pointer E04DGC_FUN */ typedef void (*E04DGC_FUN)(long, double *, double *, double *, Nag_Comm *); /* declaration of function pointer D01AJC_FUN */ typedef double (*D01AJC_FUN)(double); /* declaration of function prototypes */ void e04dgc(long n, E04DGC_FUN objfun, double x[], double *objf, double grad[], Nag_E04_Opt *options, Nag_Comm *user_comm, NagError *fail); void f02aac(long n, double *a, long tda, double *r, NagError *fail); void d01ajc(D01AJC_FUN f, double a, double b, double epsabs, double epsrel, long max_num_subint, double *result, double *abserr, Nag_QuadProgress *qp, NagError *fail); double s15abc(double x, NagError *fail);