¿Cómo verificar el desbordamiento de enteros firmados en C sin un comportamiento indefinido?
Hay (1):
// assume x,y are non-negative
if(x > max - y) error;
Y 2):
// assume x,y are non-negative
int sum = x + y;
if(sum < x || sum < y) error;
Cuál es el preferido o hay una mejor manera.