30/09/2015

GNU-libmatheval

Libmatheval est une librairie C qui analyse et évalue une expression mathématique sous forme de chaîne. Elle reconnait les fonctions et opérateurs mathématiques et les variables. En prime, elle peut déterminer la fonction dérivée.

Installation

Sous Debian :

# apt install libmatheval-dev

Dans archlinux le paquet est dans aur :

$ git htpps://aur.archlinux.org/libmatheval.git
$ cd libmatheval
$ makepkg -s
$ sudo pacman -U libmatheval-1.1.11-1-x86_64.pkg.tar.xz

Pour les autres distributions voyez votre gestionnaire de paquets.

On peut alors l'inclure dans les sources C :

#include <matheval.h>

Interface C++

Pour utiliser libmatheval en C++, on se heurte, comme souvent avec les librairies C, aux conversions de chaînes string en char *. Avec libmatheval on est bloqué parce que la méthode c_str() renvoie un const char * et le compilateur n'aime pas ça. D'où l'idée de faire une classe interface entre C++ et libmatheval.

Le début est là : mathelem.cc

Documentation de libmatheval

Exemple d'utilisation de la classe Mathelem




Réalisé avec Qlam - LGPL