Compartir a través de


Solución de problemas de excepciones: System.OverflowException

Cuando una operación aritmética o de conversión de un contexto protegido provoca un desbordamiento, se produce una excepción OverflowException. El desbordamiento se produce cuando una operación genera un valor demasiado grande para el tipo de destino, infinito o No es un número (NaN).

Sugerencias asociadas

  • Cuando realiza la conversión de un número, el valor debe ser un número menor que infinito.
    Un valor de origen no puede ser infinito o No es un número.

  • Asegúrese de que no está dividiendo por cero.
    Dividir por cero normalmente producirá esta excepción.

Comentarios

En lenguajes que detectan el desbordamiento, OverflowException es la excepción que se produce cuando aparece el desbordamiento. Por ejemplo, en C#, la palabra clave checked se utiliza para detectar las condiciones de desbordamiento. Una excepción OverflowException sólo se produce en un contexto protegido.

Para obtener un resultado de una conversión u operación aritmética de tipo decimal o integral que se encuentre fuera del intervalo del tipo de destino:

  • En un contexto protegido, se produce un error de compilación si la operación es una expresión constante. De lo contrario, se produce una excepción OverflowException si la operación se realiza en tiempo de ejecución.

  • En un contexto sin comprobar, se produce un truncamiento del resultado al descartar los bits de orden superior que no caben en el tipo de destino.

Para obtener información sobre los tipos de datos de intervalos de valor, vea Resumen de tipos de datos (Visual Basic), Tabla de tipos enteros (Referencia de C#)o Tabla de tipos de punto flotante (Referencia de C#).

Vea también

Tareas

Cómo: Usar el Asistente de excepciones

Referencia

OverflowException