C Стиль
limit.h содержит минимальное и максимальное значения для целых чисел, а также другие типы данных, которые должны быть именно такими, как вам нужно:
#include <limits.h> // C header
#include <climits> // C++ header
// Constant containing the minimum value of a signed integer (–2,147,483,648)
INT_MIN;
// Constant containing the maximum value of a signed integer (+2,147,483,647)
INT_MAX;
Полный список констант и их общих значений смотрите: Wikipedia - limit.h
C ++ Style
Существует основанный на шаблонах метод C ++, как упоминали другие комментаторы, используя:
#include <limits>
std::numeric_limits
, который выглядит как:
std::numeric_limits<int>::max();
и он может даже делать более хитрые вещи, такие как определение количества возможных цифр или тип данных со знаком или нет:
// Number of digits for decimal (base 10)
std::numeric_limits<char>::digits10;
// Number of digits for binary
std::numeric_limits<char>::digits;
std::numeric_limits<unsigned int>::is_signed;