libeval

libeval is a simple arithmetic expression evaluator supporting addition (+), subtraction (-), multiplication (*), division (/), modulo division (), exponentiation (^), sign change (+-), percentages (%), grouping and function calls (()), scalar numeric variables, and user defined functions. The evaluator and accompanying symbol table can be accessed from standard C code and are available in both static and shared libraries. (Source: http://freecode.com/)