Maison > développement back-end > C++ > Comment gérer la division par zéro exception en C ?

Comment gérer la division par zéro exception en C ?

Linda Hamilton
Libérer: 2024-12-29 10:21:10
original
488 Les gens l'ont consulté

How Do I Handle Division by Zero Exceptions in C  ?

Attraper une exception : diviser par zéro

En C , la division entière par zéro n'est pas automatiquement détectée comme une exception par le moteur d'exécution. Les exceptions C standard n'incluent pas d'exception spécifiquement pour ce cas.

Pour gérer la division par zéro, vous devez la vérifier explicitement et lancer une exception vous-même. Cela peut être fait en utilisant une condition telle que :

if (denominator == 0) {
    throw std::overflow_error("Divide by zero exception");
}
Copier après la connexion

où le dénominateur est le diviseur.

Voici un exemple de la façon de mettre en œuvre cette vérification :

int main() {
    int i = 42;

    try {
        i = 10 / 0;
    } catch (std::overflow_error &e) {
        std::cout << "Divide by zero exception: " << e.what() << std::endl;
    }

    std::cout << "i after exception: " << i << std::endl;
}
Copier après la connexion

Ce code affichera le résultat suivant :

Divide by zero exception: Divide by zero exception
i after exception: 42
Copier après la connexion

En lançant une exception pour la division par zéro, vous pouvez la gérer avec élégance et assurez-vous que votre programme ne plante pas avec une erreur de comportement non définie.

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!

source:php.cn
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