#include char exprline[100]; int ptr; double x = 1.0, y = 2.0; double val; int yyparse(); int myungetc() { ptr--; return 0; } int mygetchar() { return exprline[ptr++]; } int yyerror(char *s) { (void) fprintf(stderr, "%s\n", s); return 1; } int evalExpr(char *expr, float xp, float yp, float *value) { int ierr; sprintf(exprline, "%s;", expr); ptr = 0; x = (double) xp; y = (double) yp; ierr = yyparse(); *value = val; return ierr; } void evalexpr_(char *expr, float *xp, float *yp, float *value, int *ierr) { sprintf(exprline, "%s;", expr); ptr = 0; x = (double) *xp; y = (double) *yp; *ierr = yyparse(); *value = val; }