limits.h

limits.h
Стандартная библиотека
языка программирования С

limits.h — заголовочный файл стандартной библиотеки общего назначения языка программирования Си, который включает определения характеристик общих типов переменных. Значения зависят от специфики реализации, но могут быть не ниже диапазона, определенного для конечного значения в удобной реализации Си.

Содержание

Константы-члены

Колонка «минимальное значение диапазона» содержит минимумы из возможного диапазона для константы данного типа, как это указано в стандарте. Иногда, значения _MIN представляют минимумы диапазона, представимые в виде редко используемого обратного кода и знакового диапазона. Большинство реализаций будут иметь больший диапазон по крайней мере для некоторых из этих чисел. например:

  • Реализации дополнительного кода имеют SCHAR_MIN равным −128 (аналогично для всех остальных значений _MIN).
  • 32-битные реализации устанавливают INT_MAX равным +2,147,483,647 (а также для INT_MIN и UINT_MAX)
  • Реализации с поддержкой Юникода устанавливают MB_LEN_MAX 4 или более.
  • Многие ЦСП имеют CHAR_BIT равным 16 или более[1][2].
Имя Описание Типичное значение 32-битной
выполняемой/компилируемой
программы (с 1995 и сейчас)
Типичное значение 64-битной
выполняемой/компилируемой
программы (с 2008(?))
Стандартный минимум-
или максимум диапазона значений по ANSI
CHAR_BIT Число бит в байте 8 8 ≥ 8
SCHAR_MIN Минимальное значение для знакового char −128 −128 ≤ −127
SCHAR_MAX Максимальное значение для знакового char +127 +127 ≥ +127
UCHAR_MAX Максимальное значение для беззнакового char +255 +255 ≥ +255
CHAR_MIN Минимальное значение для char −128 −128 ≤ −127
(если char представлено как a
знаковый char; иначе 0)
CHAR_MAX Максимальное значение для char +127 +127 ≥ +127
(если char представлено как
знаковый char; иначе +255)
MB_LEN_MAX Максимальная многобайтовая длина символа по всем локалям различается, обычно от 4 различается, обычно от 4 ≥ 1
SHRT_MIN Минимальное значение для short int −32,768 −32,768 ≤ −32,767
SHRT_MAX Максимальное значение для short int +32,767 +32,767 ≥ +32,767
USHRT_MAX Максимальное значение для беззнакового short int +65,535 +65,535 ≥ +65,535
INT_MIN Минимальное значение для int −2,147,483,648 −2,147,483,648 ≤ −32,767
INT_MAX Максимальное значение для int +2,147,483,647 +2,147,483,647 ≥ +32,767
UINT_MAX Максимальное значение для беззнакового int +4,294,967,295 +4,294,967,295 ≥ +65,535
LONG_MIN Минимальное значение для long int −2,147,483,648 −9,223,372,036,854,775,808 ≤ −2,147,483,647
LONG_MAX Максимальное значение для long int +2,147,483,647 +9,223,372,036,854,775,807 ≥ +2,147,483,647
ULONG_MAX Максимальное значение для беззнакового long int +4,294,967,295 +18,446,744,073,709,551,615 ≥ +4,294,967,295
LLONG_MIN Минимальное значение для long long int −9,223,372,036,854,775,808 −9,223,372,036,854,775,808 ≤ −9,223,372,036,854,775,807
LLONG_MAX Максимальное значение для long long int +9,223,372,036,854,775,807 +9,223,372,036,854,775,807 ≥ +9,223,372,036,854,775,807
ULLONG_MAX Максимальное значение для беззнакового long long int +18,446,744,073,709,551,615 +18,446,744,073,709,551,615 ≥ +18,446,744,073,709,551,615

Пример

#include <stdio.h>
#include <limits.h>
 
int main (void) 
{
  (CHAR_MAX==UCHAR_MAX) ? printf("This machine uses unsigned char by default\n") : 
        printf("This machine uses signed char by default\n");
  return 0;
}

См. также

Дополнительные источники

  • Enquire: Программа для автоматической генерации limits.h, также проверяющая корректность значений в уже существующем limits.h

Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Нужна курсовая?

Полезное


Смотреть что такое "limits.h" в других словарях:

  • Limits.h — Стандартная библиотека языка программирования С assert.h complex.h ctype.h errno.h fenv.h float.h inttypes.h iso646.h limits.h locale.h math.h setjmp.h signal.h stdarg.h stdbool.h stddef.h stdint.h stdio.h …   Википедия

  • Limits.h — is the header of the general purpose standard library of the C programming language which includes definitions of the characteristics of common variable types. The values are implementation specific, but may not be of lower magnitude than certain …   Wikipedia

  • limits — I noun amplitude, area, boundary, bounds, capacity, configuration, confines, dimensions, extremity, frontiers, limitations, metes and bounds, outlines, perimeters, premises, purview, range, reach, scope associated concepts: basis jurisdiction,… …   Law dictionary

  • limits — n. 1) city limits 2) (AE) (esp. mil.) off limits to; on limits to (the bar was put off limits to all military personnel) 3) within (reasonable) limits * * * on limits to (the bar was put off limits to all military personnel) (AE) (esp. mil.) off… …   Combinatory dictionary

  • limits — /ˈlɪməts/ (say limuhts) plural noun Australian History → limits of location …  

  • limits — ribos statusas T sritis automatika atitikmenys: angl. boundaries; bounds; limits; ranges vok. Grenzen, f rus. пределы, m pranc. limites, f …   Automatikos terminų žodynas

  • limits — limitai statusas T sritis augalininkystė apibrėžtis Mažiausia ir didžiausia variacinės eilutės reikšmės. atitikmenys: angl. limits rus. лимиты …   Žemės ūkio augalų selekcijos ir sėklininkystės terminų žodynas

  • Limits to arbitrage — is a theory which assumes that restrictions placed upon funds, that would ordinarily be used by rational traders to arbitrage away pricing inefficiencies, leave prices in a non equilibrium state for protracted periods of time.The efficient market …   Wikipedia

  • Limits (collection) — Limits is a collection of short stories and essays by science fiction author Larry Niven, originally published in 1985. It contains:* Limits an overheard conversation between two aliens has chilling implications for the future of humanity * The… …   Wikipedia

  • Limits to Growth — Infobox Book name = Limits to Growth title orig = translator = image caption = Limits to Growth first edition cover. author = Donella H. Meadows Dennis L. Meadows Jørgen Randers William W. Behrens III illustrator = cover artist = country =… …   Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»