Grænser.h

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 17. september 2014; checks kræver 13 redigeringer .

limits.h  er overskriftsfilen i C-programmeringssprogets standardbibliotek til generelle formål , som indeholder definitioner for karakteristika for almindelige variabeltyper. Deres betydning afhænger af målhardwareplatformen og den anvendte sprogkompiler.

Medlemskonstanter

Kolonnen "minimumsområdeværdi" indeholder minimumsværdierne for det mulige område for en konstant af denne type, som specificeret i standarden. Nogle gange repræsenterer værdierne _MINminimumsværdierne for et interval, repræsenteret som en sjældent brugt backcode og et signeret interval . De fleste implementeringer vil have et større område for i det mindste nogle af disse tal. for eksempel:

Navn Beskrivelse Typisk værdi af 32-bit
eksekverbart/kompileret
program (siden 1995 og nu)
Typisk værdi af 64-bit
eksekverbart/kompileret
program (siden 2008(?))
ANSI standard minimum
eller maksimum rækkevidde
CHAR_BIT Antal bits i en byte otte otte ≥ 8
SCHAR_MIN Minimumværdi for signeret char −128 −128 ≤ −127
SCHAR_MAX Max værdi for signeret char +127 +127 ≥ +127
UCHAR_MAX Maks. værdi for usigneret char +255 +255 ≥ +255
CHAR_MIN Minimumsværdi for char −128 −128 ≤ −127
(hvis charrepræsenteret som
знаковый char; ellers 0)
CHAR_MAX Max værdi for char +127 +127 ≥ +127
(hvis charpræsenteret som
знаковый char; ellers +255)
MB_LEN_MAX Maksimal multibyte-tegnlængde på tværs af alle landestandarder varierer, normalt fra 4 varierer, normalt fra 4 ≥ 1
SHRT_MIN Minimumværdi for kort int −32768 −32768 ≤ −32767
SHRT_MAX Max værdi for kort int +32767 +32767 ≥ +32767
USHRT_MAX Maksimal værdi for usigneret kort int +65535 +65535 ≥ +65535
INT_MIN Minimumsværdi for int −2147483648 −2147483648 ≤ −32767
INT_MAX Max værdi for int +2147483647 +2147483647 ≥ +32767
UINT_MAX Maks. værdi for usigneret int +4294967295 +4294967295 ≥ +65535
LONG_MIN Minimumværdi for lang int −2147483648 −9223372036854775808 ≤ −2147483647
LONG_MAX Max værdi for lang int +2147483647 +9223372036854775807 ≥ +2147483647
ULONG_MAX Maks. værdi for usigneret lang int +4294967295 +18446744073709551615 ≥ +4294967295
LLONG_MIN Minimumværdi for lang lang int −9223372036854775808 −9223372036854775808 ≤ −9223372036854775807
LLONG_MAX Max værdi for lang lang int +9223372036854775807 +9223372036854775807 ≥ +9223372036854775807
ULLONG_MAX Maks. værdi for usigneret lang lang int +18446744073709551615 +18446744073709551615 ≥ +18446744073709551615

Eksempel 1

#include <stdio.h> #include <limits.h> int main ( void ) { if ( CHAR_MAX == UCHAR_MAX ) { printf ( "Denne maskine bruger usigneret tegn som standard \n " ); } andet { printf ( "Denne maskine bruger signeret tegn som standard \n " ); } returnere 0 ; }

Eksempel 2

#include <limits.h> #include <locale.h> #include <stdio.h> int main ( ugyldig ) { setlocale ( LC_ALL , "RUS" ); printf ( "Den maksimale værdi af typen int på dette system er %d \n " , INT_MAX ); returnere 0 ; }

Se også

Yderligere kilder

  • Spørg : Et program til automatisk at generere limits.h, der også validerer værdierne i en allerede eksisterende limits.h

Links