Freigeben über


Problembehandlung bei Ausnahmen: System.OverflowException

Eine OverflowException-Ausnahme wird ausgelöst, wenn ein arithmetischer, ein Umwandlungs- oder ein Konvertierungsvorgang in einem aktivierten Kontext zu einem Überlauf führt. Ein Überlauf tritt auf, wenn bei einer Operation ein Wert entsteht, der zu groß für den Zieltyp ist, unendlich entspricht oder keine Zahl ist (Not a Number, NaN).

Tipps

  • Beim Umwandeln aus einer Zahl muss der Wert eine Zahl sein, die kleiner als unendlich ist.
    Ein Quellwert darf nicht unendlich sein, und er muss eine gültige Zahl sein.

  • Dividieren Sie nicht durch 0.
    Diese Ausnahme wird normalerweise ausgelöst, wenn eine Division durch 0 durchgeführt wird.

Hinweise

In Sprachen, die einen Überlauf erkennen, wird beim Auftreten eines Überlaufs die Ausnahme OverflowException ausgelöst. Zum Beispiel wird in C# das checked-Schlüsselwort verwendet, um Überlaufbedingungen zu erkennen. Eine OverflowException-Ausnahme tritt nur in einem aktivierten Kontext auf.

Bei einem Ergebnis aus einer arithmetischen Operation mit ganzzahligen Typen oder Dezimaltypen oder aus einer Konvertierung, das einen Wert außerhalb des Zieltypbereichs ergibt:

  • In einem aktivierten Kontext tritt ein Kompilierungsfehler auf, wenn die Operation ein konstanter Ausdruck ist. Andernfalls wird, wenn die Operation zur Laufzeit ausgeführt wird, eine OverflowException-Ausnahme ausgelöst.

  • In einem nicht aktivierten Kontext wird das Ergebnis gekürzt, indem alle höherwertigen Bits verworfen werden, die nicht in den Zieltyp passen.

Informationen zu den Wertbereichen von Datentypen finden Sie unter Datentyp: Zusammenfassung (Visual Basic), Tabelle ganzzahliger Typen (C#-Referenz) oder Tabelle für Gleitkommatypen (C#-Referenz)

Siehe auch

Aufgaben

Gewusst wie: Verwenden des Ausnahmen-Assistenten

Referenz

OverflowException