tag - summary c# visual studio
C#Desbordamiento no funciona? ¿Cómo habilitar la comprobación de desbordamiento? (1)
Puede usar los siguientes pasos para habilitar la comprobación de Desbordamiento / Desbordamiento Aritmético en Visual Studio:
- Haga clic derecho en su proyecto en el Explorador de soluciones y seleccione Propiedades.
- En la pestaña Construir, haga clic en el botón Avanzado. (Está hacia el fondo)
- Marque la casilla de verificación "Verificar desbordamiento / subflujo aritmético".
Esto generará una System.OverflowException
cuando ocurra el desbordamiento en lugar de su operación habitual de cambiar el valor a un valor mínimo.
Sin desbordamiento aritmético / desbordamiento activado:
int test = int.MaxValue;
test++;
//Test should now be equal to -2,147,483,648 (int.MinValue)
Con Aritmética Desbordamiento / Desbordamiento activado:
int test = int.MaxValue;
test++;
//System.OverflowException thrown
Usando un bloque marcado:
checked
{
int test = int.MaxValue;
test++;
//System.OverflowException thrown
}
La documentación para comprobar está disponible here. ( Gracias a Sasha por recordármelo ) .
Estaba trabajando con C # y noté que cuando tenía un entero muy grande e intentaba hacerlo más grande. En lugar de lanzar algún tipo de error de desbordamiento, simplemente establece el número al valor más bajo posible (-2,147,483,648), creo.
Me preguntaba si había una manera de habilitar la comprobación de desbordamiento en Visual Studio?