Heim > Backend-Entwicklung > C++ > Wie gehe ich mit Division durch Null-Ausnahmen in C um?

Wie gehe ich mit Division durch Null-Ausnahmen in C um?

Linda Hamilton
Freigeben: 2024-12-29 10:21:10
Original
502 Leute haben es durchsucht

How Do I Handle Division by Zero Exceptions in C  ?

Ausnahme abfangen: Division durch Null

In C wird die ganzzahlige Division durch Null von der Laufzeit nicht automatisch als Ausnahme abgefangen. Die Standard-C-Ausnahmen enthalten keine spezielle Ausnahme für diesen Fall.

Um die Division durch Null zu verarbeiten, müssen Sie explizit danach suchen und selbst eine Ausnahme auslösen. Dies kann mithilfe einer Bedingung wie der folgenden erfolgen:

if (denominator == 0) {
    throw std::overflow_error("Divide by zero exception");
}
Nach dem Login kopieren

wobei der Nenner der Teiler ist.

Hier ist ein Beispiel für die Implementierung dieser Prüfung:

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;
}
Nach dem Login kopieren

Dieser Code gibt die folgende Ausgabe aus:

Divide by zero exception: Divide by zero exception
i after exception: 42
Nach dem Login kopieren

Indem Sie eine Ausnahme für die Division durch Null auslösen, können Sie damit elegant umgehen Stellen Sie sicher, dass Ihr Programm nicht mit einem undefinierten Verhaltensfehler abstürzt.

Das obige ist der detaillierte Inhalt vonWie gehe ich mit Division durch Null-Ausnahmen in C um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage