Ho letto in molti punti che l'overflow intero è ben definito in C a differenza della controparte firmata.Domanda sul comportamento C per underflow intero non firmato
L'underflow è uguale?
Ad esempio:
unsigned int x = -1; // Does x == UINT_MAX?
Grazie.
Non riesco a ricordare dove, ma ho letto da qualche parte che l'aritmetica su tipi interi senza segno è modulare, quindi se fosse il caso allora -1 == UINT_MAX mod (UINT_MAX + 1).
Credo che il termine "underflow" sia applicabile solo ai numeri in virgola mobile, dove non è possibile rappresentare numeri molto vicini allo zero. Gli integer non avrebbero questo problema. – WildCrustacean
@bde Sono d'accordo che si tratti di un'affermazione tecnicamente accurata, ma il termine è spesso sovraccarico per la violazione della condizione al contorno nella parte inferiore di un sistema numerico. – vicatcu