Quadruple Précision en C ++ (GCC)
Tout récemment, la GCC 4.6.0 est sorti avec libquadmath. Malheureusement, le projet GNU a pris en charge le Fortran, mais pas de C ou C++ (tout ce qui est inclus est un .donc). Je n'ai pas trouvé une façon d'utiliser ces nouvelles fonctionnalités en C++, cependant, GNU C prend en charge la __float128
type de garantie quadruple précision des flotteurs. GNU C ne semblent pas soutenir les fonctions mathématiques de libquadmathtels fabsq
(valeur absolue, q
étant le suffixe pour les quads).
Est-il possible d'obtenir ces fonctions de travail en C++, ou est-il une bibliothèque alternative que je pourrais utiliser pour les fonctions mathématiques avec __float128
? Quelle est la meilleure méthode pour obtenir quadruple précision flotte de travail dans le CCG? Maintenant, je peux ajouter, soustraire et multiplier, mais c'est inutile pour moi, car je n'ai aucun moyen de les convertir en chaînes ou utiliser des fonctions telles que truncq
et fabsq
de créer ma propre chaîne de fonction.
source d'informationauteur RétroX
Vous devez vous connecter pour publier un commentaire.
Apparemment, cela semble avoir été une erreur d'installation de ma part.
Tandis que le noyau C/C++ partie de la GCC comprend libquadmath.donc, le Fortran version fournitures libquadmath.un et quadmath.h, qui peut être inclus pour accéder aux fonctions.
nm .donc fichier, et voir ce que les noms de fonction sont vraiment. IIRC, routines fortran ont un _ à la fin du nom. En C++, vous aurez besoin de extern "C" {} prototypes. Si c'est une interface fortran, puis tous les arguments sont passés par référence, des proto pourrait être quelque chose comme