The C interface is identical to the FORTRAN interface. The C prototypes are given below.
#include <bbhutil.h>
int gft_read_id_str_p(const char *file_name, const char *param_name,
char **param, int nparam);
int gft_read_id_int_p(const char *file_name, const char *param_name,
int *param, int nparam);
int gft_read_id_float_p(const char *file_name, const char *param_name,
int *param, int nparam);
int gft_read_2idata(const char *file_name, const char *func_name,
int *shape, int rank,
double *datanm1, double *datan);
int gft_read_1idata(const char *file_name, const char *func_name,
int *shape, int rank, double *datan);
int gft_read_idata(const char *file_name, const char *func_name,
int *shape, int rank, double *data);
int gft_write_id_str_p(const char *file_name, const char *param_name,
char **param, int nparam);
int gft_write_id_int_p(const char *file_name, const char *param_name,
int *param, int nparam);
int gft_write_id_float_p(const char *file_name, const char *param_name,
double *param, int nparam);
int gft_write_2idata(const char *file_name, const char *func_name,
int *shape, int rank,
double *datanm1, double *datan);
int gft_write_1idata(const char *file_name, const char *func_name,
int *shape, int rank, double *datan);
int gft_write_idata(const char *file_name, const char *func_name,
int *shape, int rank, double *data);