If during the evaluation of an expression,
the result is not mathematically defined
or not in the range of representable values for its type,
the behavior is undefined.
[Example 1: #include<limits>int main(){// Assuming 32-bit int, the range of values is: −2,147,483,648 to 2,147,483,647.int x1 = std::numeric_limits<int>::max()+1;
// undefined behavior, 2,147,483,647+1 is not representable as an intint x2 = std::numeric_limits<int>::min()/-1;
// undefined behavior, −2,147,483,648/−1 is not representable as an int} — end example]