¿Cómo determinar si c es mayor que 32767 o menor que -32768?
Por supuesto que tienes razón, pero también podemos salirnos de los caminos trillados. Defina max min como 16 bits, por ejemplo max=32767
min=-32768 Almacene el resultado en una variable de 32 bits y luego compárelo con max min para ver si se desborda
Ejemplo:
int a;
short int b=32767;
a = b++;
if(a>max ){ p>
desbordamiento
}
else b=a;