You've answered 1 of 178 questions correctly. (Clear)
Question #24 Difficulty:
According to the C++23 standard, what is the output of this program?
#include <iostream>
#include <limits>
int main() {
unsigned int i = std::numeric_limits<unsigned int>::max();
std::cout << ++i;
}
Correct!
Unsigned integers have well-defined behaviour when they overflow. When you go one above the largest representable unsigned int, you end up back at zero.
According to §[basic.fundamental]¶2 in the C++ standard:
The range of representable values for the unsigned type is 0 to 2N − 1 (inclusive); arithmetic for the unsigned type is performed modulo 2N.
You can explore this question further on C++ Insights or Compiler Explorer!
Mode : Training
You are currently in training mode, answering random questions. Why not Start a new quiz? Then you can boast about your score, and invite your friends.
Contribute
Android app
Get Sergey Vasilchenko's CppQuiz Android app.
C++ Brain Teasers
Get the book, support the site!