C | C Quiz - 113 | Вопрос 1
Опубликовано: 16 Февраля, 2022
(A) Бесконечный цикл
(В) 0
(С) 1
(D) Ошибка времени выполнения
Ответ: (С)
Объяснение: Результатом будет 1, но по прошествии очень долгого времени, потому что цикл while будет продолжаться, пока i не станет 4294967295 (при условии, что unsigned int хранится с использованием 4 байтов), а поскольку i максимальный предел unsigned int равен 4294967295 в следующей операции ++, он станет нулем, и мы выйдем из цикла, и будет напечатана 1.
Поскольку время занимает много времени, онлайн-компилятор может завершить программу с ошибкой превышения лимита времени. Если вместо unsigned int вы используете unsigned short int, результат (1) может прийти быстрее.
Тест на этот вопрос