Maison > développement back-end > C++ > Comment déterminer si un compilateur C adhère à la norme IEEE 754 ?

Comment déterminer si un compilateur C adhère à la norme IEEE 754 ?

Linda Hamilton
Libérer: 2024-10-28 09:10:29
original
1122 Les gens l'ont consulté

How to Determine if a C   Compiler Adheres to the IEEE 754 Standard?

Détermination de l'utilisation par le compilateur de la norme IEEE 754 en C

Contrairement au C, qui nécessite une vérification de définition spécifique pour vérifier si le compilateur adhère à la norme IEEE 754, C propose une approche plus simple. Le standard C inclut la classe numeric_limits dans l'espace de noms std. Pour déterminer si le compilateur utilise IEEE 754, accédez simplement au membre statique is_iec559 comme suit :

<code class="cpp">std::numeric_limits<double>::is_iec559;</code>
Copier après la connexion

ou :

<code class="cpp">std::numeric_limits<float>::is_iec559;</code>
Copier après la connexion

Cette expression renvoie vrai si IEEE 754 est utilisé, et false sinon.

Alternativement, comme suggéré par la réponse d'Adam, vous pouvez également utiliser une autre méthode :

<code class="cpp">#include <iostream>
#include <cmath>

int main() {
    double d = -0.0;
    std::cout << (std::signbit(d) != std::signbit(-d)) << std::endl;
    return 0;
}</code>
Copier après la connexion

Si le compilateur prend en charge IEEE 754, ce code génère 0 ; sinon, il génère 1.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal