Come e' possibile evitare l'errore di overflow su di un numero acquisito tramite scanf? Cioe' mettere un controllo del tipo if (num > INT_MAX) non ha senso, visto che se num e' maggiore di INT_MAX assume dei valori casuali minori di INT_MAX; acquisire il numero come stringa controllare la lunghezza e poi trasformare il dato in integer non è proprio corretto visto che INT_MAX vale 2147483647, 10 cifre, e di numeri a 10 cifre ce ne sono molti altri maggiori di INT_MAX... in piu' in quest'ultimo caso si potrebbe anche andare in overflow di caratteri...