РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
127 of 815 menu

Поле max

Поле max класса numeric_limits возвращает максимальное конечное значение, представимое для заданного числового типа. Это значение полезно знать, когда нужно ограничить диапазон вычислений, проверить переполнение или просто выяснить пределы типа. Поле не принимает параметров и возвращает значение того же типа, для которого был инстанцирован шаблон numeric_limits.

Стоит помнить, что для целочисленных знаковых типов значение max не является симметричным по отношению к минимуму: модуль минимального значения на единицу больше. Для типов с плавающей точкой max возвращает наибольшее нормализованное число, а не бесконечность.

Синтаксис

numeric_limits<T>::max()

Пример

Давайте выведем максимальное значение для типа int и для типа double:

#include <iostream> #include <limits> using namespace std; int main() { cout << numeric_limits<int>::max() << endl; cout << numeric_limits<double>::max() << endl; return 0; }

Результат выполнения кода:

2147483647 1.79769e+308

Пример

Давайте проверим, помещается ли результат умножения в тип int, используя max как границу:

#include <iostream> #include <limits> using namespace std; int main() { int a = 100000; int b = 100000; long long res = (long long)a * b; if (res > numeric_limits<int>::max()) { cout << "overflow" << endl; } else { cout << res << endl; } return 0; }

Результат выполнения кода:

"overflow"

Пример

Давайте выведем максимальные значения для нескольких целочисленных типов и сравним их:

#include <iostream> #include <limits> using namespace std; int main() { cout << "char: " << (int)numeric_limits<char>::max() << endl; cout << "short: " << numeric_limits<short>::max() << endl; cout << "unsigned: " << numeric_limits<unsigned>::max() << endl; return 0; }

Результат выполнения кода:

"char: 127" "short: 32767" "unsigned: 4294967295"

Смотрите также

  • класс numeric_limits,
    который предоставляет информацию о пределах типов
  • поле min,
    которое возвращает минимальное конечное значение
  • поле lowest,
    которое возвращает наименьшее представимое значение
  • поле epsilon,
    которое возвращает машинную разницу между единицей и следующим числом
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить