Permet d'évaluer en direct une expression arythmétique complexe sans automate, sans pile, sans classes, sans extraire de tokens ect... Il suffit d'appeler le moteur d'évaluation javascript depuis le code c/c++.
Source / Exemple :
// 1 : saisie de l'expression (syntaxe intuitive puisque la même que le C).
// 2 : passe l'expression (chaine de caractères) au moteur d'évaluation javascript
// 3 : utilise le résulat !
Conclusion :
Donc on saisie une expression avec n'importe quels opérateurs (opérateurs binaires, imbriquation multiples de parenthèses ect..), on peut mélanger le format hexa, octal et décimal, on peut ajouter des fonctions ou des variables, puis on récupère simplement le résultat. Voir les 4 exemples fournis.
Je travaille sur un interpréteur SQL qui doit bien sur gérer les expressions arythmétiques une fois les expressions de champs numérique réduites. En mettant le nez dedans, j'ai trouvé cela trop complexe à implémenter (automates, pile, imbriquations infini ect...),d'ou le moyen détourné suivant, qui est un peu "de la triche" mais qui garanti l'efficacité et la justesse des résultats. En C# j'aurais utilisé la compilation dynamique qui permet le même genre de chose, mais en c/c++ cela n'existe pas.
20 juin 2012 à 17:17
Pour ceux qui auraient des doutes,
ce code est à proscrire pour un "vrai" projet commercial...
bye...
18 juin 2012 à 14:39
mais pas la portabilité ^^
31 mai 2012 à 13:26
Bye...
31 mai 2012 à 09:36
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.