# Integer division by zero

suggest changeint x = 5 / 0; // Undefined behavior

Division by `0`

is mathematically undefined, and as such it makes sense that this is undefined behavior.

However:

float x = 5.0f / 0.0f; // x is +infinity

Most implementation implement IEEE-754, which defines floating point division by zero to return `NaN`

(if numerator is `0.0f`

), `infinity`

(if numerator is positive) or `-infinity`

(if numerator is negative).

Found a mistake? Have a question or improvement idea?
Let me know.

Table Of Contents