Knowledge (XXG)

C data types

Source πŸ“

2995: 4607: 1438:
should be the integer type that the target processor is most efficiently working with. This allows great flexibility: for example, all types can be 64-bit. However, several different integer width schemes (data models) are popular. Because the data model defines how different programs communicate, a
2457:
standard includes definitions of several new integer types to enhance the portability of programs. The already available basic integer types were deemed insufficient, because their actual sizes are implementation defined and may vary across different systems. The new types are especially useful in
3458:
is a special construct that permits access to the same memory block by using a choice of differing type descriptions. For example, a union of data types may be declared to permit reading the same data either as an integer, a float, or any other user declared type:
1692:
has a size of 8 bits. This is because the value 256 does not fit in the data type, which results in the lower 8 bits of it being used, resulting in a zero value. However, changing the type causes the previous code to behave normally:
1995:
is a signed integer type used to represent the difference between pointers. It is guaranteed to be valid only against pointers of the same type; subtraction of pointers consisting of different types is implementation-defined.
1932:
to represent memory-related quantities. Their size is defined according to the target processor's arithmetic capabilities, not the memory capabilities, such as available address space. Both of these types are defined in the
3153:
The memory layout of a structure is a language implementation issue for each platform, with a few restrictions. The memory address of the first member must be the same as the address of structure itself. Structures may be
1370:
Uppercase differs from lowercase in the output. Uppercase specifiers produce values in the uppercase, and lowercase in lower (%A, %E, %F, %G produce such values as INF, NAN and E (exponent) in uppercase)
3078:
Structures aggregate the storage of multiple data items, of potentially differing data types, into one memory block referenced by a single variable. The following example declares the data type
225:, contain definitions of support types, that have additional properties, such as providing storage with an exact size, independent of the language implementation on specific hardware platforms. 3275:
Arrays can be initialized with a compound initializer, but not assigned. Arrays are passed to functions by passing a pointer to the first element. Multidimensional arrays are defined as
1129:
Real floating-point type, usually referred to as a double-precision floating-point type. Actual properties unspecified (except minimum limits); however, on most systems, this is the
1063:
Real floating-point type, usually referred to as a single-precision floating-point type. Actual properties unspecified (except minimum limits); however, on most systems, this is the
1205: 4134: 1829:
is an integer constant expression that denotes the number of bits, including the sign bit for signed types, represented in two's complement. The maximum value of
3030:
Similarly to the fixed-width integer types, ISO/IEC TS 18661 specifies floating-point types for IEEE 754 interchange and extended formats in binary and decimal:
173: 2436:(C99) – minimum number of decimal digits such that any number of the widest supported floating-point type can be represented in decimal with a precision of 1481:
the basic type used for arrays suitable to store arbitrary non-bit-field objects: its lack of padding bits and trap representations, the definition of
4766: 5137: 4771: 194:
constitute the semantics and characteristics of storage of data elements. They are expressed in the language syntax in form of declarations for
4761: 4756: 1130: 1064: 2496:
Fastest integer types that are guaranteed to be the fastest integer type available in the implementation, that has at least specified number
3158:
or assigned to using compound literals. A function may directly return a structure, although this is often not efficient at run-time. Since
4744: 4645: 4127: 2489:
Least-width integer types that are guaranteed to be the smallest type available in the implementation, that has at least specified number
3322:) type declarator following the basic storage type and preceding the variable name. Whitespace before or after the asterisk is optional. 3318:
is a data type that contains the address of a storage location of a variable of a particular type. They are declared with the asterisk (
2462:
where hardware usually supports only several types and that support varies between different environments. All new types are defined in
1947:
is an unsigned integer type used to represent the size of any object (including arrays) in the particular implementation. The operator
1810:, the language allows the programmer to define integers that have a width of an arbitrary number of bits. Those types are specified as 1381:
types varies by implementation. The standard requires only size relations between the data types and minimum sizes for each data type:
4447: 2004:
Information about the actual properties, such as size, of the basic arithmetic types, is provided via macro constants in two headers:
5188: 4611: 2111:– maximum possible value of unsigned integer types: unsigned char, unsigned short, unsigned int, unsigned long, unsigned long long 166: 3732:. The other qualifiers are used for low-level programming, and while widely used there, are rarely used by typical programmers. 4895: 4428: 4337: 4120: 3686: 2503:
Pointer integer types that are guaranteed to be able to hold a pointer. Included only if it is available in the implementation.
3373:, including pointers to array types. The latter are less common than an array of pointers, and their syntax may be confusing: 5012: 4817: 4749: 4711: 4546: 3315: 270:. The following table lists the permissible combinations in specifying a large set of storage size-specific declarations. 4518: 4912: 4842: 4690: 4566: 3644:
Function pointers are invoked by name just like normal function calls. Function pointers are separate from pointers and
3582:
Reading from a union member is not the same as casting since the value of the member is not converted, but merely read.
3082:
which contains the name and birthday of a person. The structure definition is followed by a declaration of the variable
2330:– number of decimal digits that can be represented without losing precision by float, double, long double, respectively 5193: 5167: 4576: 4561: 4267: 2086:– maximum possible value of signed integer types: signed char, signed short, signed int, signed long, signed long long 2061:– minimum possible value of signed integer types: signed char, signed short, signed int, signed long, signed long long 199: 159: 85: 2430:– maximum positive integer such that 10 raised to that power is a normalized float, double, long double, respectively 2398:– minimum negative integer such that 10 raised to that power is a normalized float, double, long double, respectively 3593:
allow referencing functions with a particular signature. For example, to store the address of the standard function
4922: 4790: 4523: 4252: 3912: 3751: 1450:
is usually 16 bits in size (as are their unsigned counterparts). This holds true for platforms as diverse as 1990s
1378: 302: 55: 5100: 5052: 4964: 4942: 4937: 4865: 4731: 4571: 4277: 4174: 4169: 4164: 3709: 3671: 1807: 1561: 75: 3712:) – the latter has a private name to avoid clashing with user names, but the more ordinary name 4974: 4638: 4551: 4262: 4210: 4143: 1529: 1488:
The actual size and behavior of floating-point types also vary by implementation. The only requirement is that
1201: 1197: 187: 80: 65: 5127: 5042: 4414: 4389: 3241:. An array is a collection of values, all of the same type, stored contiguously in memory. An array of size 4432: 3777: 1319:. Since C23, the only representation allowed is two's complement, therefore the values range from at least 4870: 4726: 4685: 4680: 4374: 4033: 3746: 4860: 4835: 4008: 3365:
Pointers may also be declared for pointer data types, thus creating multiple indirect pointers, such as
3170: 3163: 2020:
header in C++) defines macros for floating-point types. The actual values depend on the implementation.
4394: 3639:// the & operator can be omitted, but makes clear that the "address of" abs is used here 4662: 4103: 2805: 2783: 2506:
Maximum-width integer types that are guaranteed to be the largest integer type in the implementation.
100: 3866: 2416:
raised to a power one less than that number is a normalized float, double, long double, respectively
2384:
raised to a power one less than that number is a normalized float, double, long double, respectively
1533:. They correspond to the types used for the intermediate results of floating-point expressions when 5198: 5132: 5110: 5037: 4890: 4882: 4802: 4631: 4409: 4404: 4366: 4257: 2809: 2787: 1501: 1290: 1282: 70: 2510:
The following table summarizes the types and the interface to acquire the implementation details (
1133:(64 bits). This format is required by the optional Annex F "IEC 60559 floating-point arithmetic". 1067:(32 bits). This format is required by the optional Annex F "IEC 60559 floating-point arithmetic". 5115: 5095: 5047: 5022: 4807: 4776: 4475: 4240: 2366:-base digits in the floating-point significand for types float, double, long double, respectively 1193: 1189: 218: 35: 17: 202:. Data types also determine the types of operations or methods of processing of data elements. 5002: 4932: 4907: 4721: 4716: 4308: 4303: 4272: 4215: 4205: 3729: 3676: 1604: 222: 95: 90: 60: 4058: 3963: 3929: 3843: 3801: 3428:
is only one pointer (size 4 or 8 bytes), and the data it refers to is an array of ten bytes (
5147: 5032: 4830: 3725: 3590: 1635: 1565: 2486:
of bits across all implementations. Included only if it is available in the implementation.
5152: 5017: 4969: 4902: 4419: 4379: 4287: 3169:
A structure containing a pointer to a structure of its own type is commonly used to build
2459: 2345: 1463: 4081: 3889: 4437: 301:
Smallest addressable unit of the machine that can contain basic character set. It is an
5105: 4927: 4917: 4825: 4592: 4399: 4325: 4225: 3663: 3657: 1630:
functions similarly to a normal integer type, with one exception: any assignments to a
1545: 1286: 195: 2994: 5182: 5027: 4495: 4485: 4424: 3986: 2800:
in C++) provides features that enhance the functionality of the types defined in the
2440:
digits and read back in the original floating-point type without changing its value.
4984: 4959: 4465: 3645: 1439:
uniform data model is used within a given operating system application interface.
2310:(C99) – evaluation method of expressions involving different floating-point types 5162: 5157: 5007: 4954: 4781: 4556: 1358:
These format strings also exist for formatting to text, but operate on a double.
1209: 210: 3279:, and all except the outermost dimension must have compile-time constant size: 1404:'s size is always the minimum supported data type, no other data types (except 1281:(e.g. ) come from the various integer representations allowed by the standard ( 5067: 5062: 4979: 4947: 4852: 4795: 4200: 4179: 3455: 2270:– minimum normalized positive value of float, double, long double respectively 1293:). However, most platforms use two's complement, implying a range of the form 1192:
floating-point number format. Actual properties unspecified. It can be either
305:
type. Actual type can be either signed or unsigned. It contains CHAR_BIT bits.
3728:
and encountered in any significant use of the C language, which must satisfy
1634:
that are not 0 (false) are stored as 1 (true). This behavior exists to avoid
5142: 5120: 5077: 5072: 4739: 4695: 4654: 3226: 1405: 3868:
Rationale for International Standardβ€”Programming Languagesβ€”C Revision 5.10
5057: 4500: 4490: 4470: 4315: 4282: 4220: 4112: 3756: 3741: 3696: 3155: 2284:(C11) – minimum positive value of float, double, long double respectively 145: 136: 118: 2478:
header in C++). The types can be grouped into the following categories:
1981:
is guaranteed to be at least 16 bits wide. Additionally, POSIX includes
4184: 3293:// array of 10 elements, each of type 'array of 8 int elements' 2032:– size of the char type in bits, commonly referred to as the size of a 1920: 1638:
in implicit narrowing conversions. For example, in the following code:
206: 127: 2482:
Exact-width integer types that are guaranteed to have the same number
4455: 4352: 4347: 4154: 3691: 3681: 1949: 1455: 1910:
also exists, being either 0 or 1 and has no equivalent signed type.
4541: 4480: 4460: 4384: 4332: 4320: 2298:– maximum finite value of float, double, long double, respectively 1618:
as a convenient alias for this type, and also provides macros for
1467: 1459: 1451: 341:, but guaranteed to be signed. Capable of containing at least the 238:
The C language provides the four basic arithmetic type specifiers
4675: 4342: 2033: 4627: 4116: 4670: 4159: 3701: 3159: 2989: 2825: 2500:
of bits. Guaranteed to be specified for at least N=8,16,32,64.
2493:
of bits. Guaranteed to be specified for at least N=8,16,32,64.
2454: 1600: 1516: 1017: 925: 564:
Basic signed integer type. Capable of containing at least the
4623: 1740:
also ensures true values always compare equal to each other:
1568:
types (which were described in an informative annex of C99):
1196:(80 bits, but typically 96 bits or 128 bits in memory with 3424:(usually 40 or 80 bytes on common platforms), but element 788:
unsigned integer type. Capable of containing at least the
3724:
is by far the best-known and most used, appearing in the
3662:
The aforementioned types can be characterized further by
876:
signed integer type. Capable of containing at least the
702:
signed integer type. Capable of containing at least the
437:
signed integer type. Capable of containing at least the
205:
The C language provides basic arithmetic types, such as
3006: 2346:
difference between 1.0 and the next representable value
381:, but guaranteed to be unsigned. Contains at least the 1985:, which is a signed integer type of the same width as 1131:
IEEE 754 double-precision binary floating-point format
1065:
IEEE 754 single-precision binary floating-point format
213:
types, and syntax to build array and compound types.
3390:// array of 10 elements of 'pointer to char' 2012:
header in C++) defines macros for integer types and
5086: 4995: 4881: 4851: 4816: 4704: 4661: 4585: 4532: 4509: 4446: 4365: 4296: 4239: 4193: 3429: 2982:corresponds to the number of bits in the argument. 2905:corresponds to the number of bits in the argument. 2316:– radix of the exponent in the floating-point types 1893: 1875: 1857: 1842: 1811: 629:Basic unsigned integer type. Contains at least the 2129:– maximum number of bytes in a multibyte character 1206:IEEE 754 quadruple-precision floating-point format 27:Data types supported by the C programming language 2812:specifiers corresponding to the types defined in 1584:allows all these types to be accessed with using 3924: 3922: 3674:, there are four type qualifiers in standard C: 1519:standard includes new real floating-point types 2948:defines the type of the argument and is one of 2871:defines the type of the argument and is one of 1188:Real floating-point type, usually mapped to an 3958: 3956: 3954: 3952: 3950: 3948: 3543:– which happens to be the sum of the sizes of 2000:Interface to the properties of the basic types 1968: 4639: 4128: 3417:requires ten blocks of memory of the size of 2304:– rounding mode for floating-point operations 1537:is 0, 1, or 2. These types may be wider than 1462:, and Microchip MCC18 for embedded 8-bit PIC 986:unsigned integer type. Contains at least the 505:unsigned integer type. Contains at least the 167: 8: 2924:defines the output formatting and is one of 2847:defines the output formatting and is one of 1366: 1364: 1194:x86 extended-precision floating-point format 2816:and several functions for working with the 2348:of float, double, long double, respectively 1965:, a macro constant which is defined in the 1504:binary floating-point formats are used for 4646: 4632: 4624: 4245: 4135: 4121: 4113: 3838: 3836: 3834: 3832: 3830: 3828: 3826: 3824: 3822: 3820: 3229:and function types, there exist the types 1918:The C language specification includes the 174: 160: 31: 3270:// array of 10 elements, each of type int 2470:header in C++) and also are available at 3408:// pointer to a 10-element array of char 2516: 272: 3876:Sizes of integer types <limits.h> 3853:Sizes of integer types <limits.h> 3768: 1384:The relation requirements are that the 1273: 1271: 1269: 1267: 1265: 1261: 1208:(128 bits), or the same as double. See 108: 42: 34: 3987:"64-Bit Programming Models: Why LP64?" 4083:ISO/IEC 9899:2023 specification draft 3891:ISO/IEC 9899:2023 specification draft 3796: 3794: 2412:– maximum positive integer such that 2380:– minimum negative integer such that 1477:Various rules in the C standard make 7: 4060:ISO/IEC 9899:1999 specification, TC3 3965:ISO/IEC 9899:1999 specification, TC3 3931:ISO/IEC 9899:1999 specification, TC3 3845:ISO/IEC 9899:1999 specification, TC3 3803:ISO/IEC 9899:1999 specification, TC3 3778:"Portable Fixed-Width Integers in C" 4009:"Width of Type (The GNU C Library)" 3086:that allocates the needed storage. 1892:takes values from 0 to 3. The type 1485:, and the possibility of aliasing. 3939:Representations of types – General 3162:, a structure may also end with a 2778:Printf and scanf format specifiers 2254:Properties of floating-point types 1874:) takes values from βˆ’2 to 1 while 1307:for these implementations, e.g. ( 25: 3776:Barr, Michael (2 December 2007). 1914:Size and pointer difference types 1500:. Usually, the 32-bit and 64-bit 18:C variable types and declarations 4606: 4605: 3049:for decimal interchange formats; 2993: 2824:types. This header was added in 2123:– maximum possible value of char 2117:– minimum possible value of char 1415:is 8 bits, the minimum size for 3040:for binary interchange formats; 3026:Additional floating-point types 2514:refers to the number of bits): 1431:must contain at least 64 bits. 3811:Integer types <stdint.h> 3720:header is included. Of these, 3563:. When assigning something to 2804:header. It defines macros for 1474:to be exactly 8 bits in size. 1446:is usually 8 bits in size and 1: 4712:Arbitrary-precision or bignum 3069:for decimal extended formats. 2913:The macros are in the format 2836:The macros are in the format 291:Suffix for decimal constants 3245:is indexed by integers from 3059:for binary extended formats; 1496:, which is not smaller than 1396:, which is not smaller than 1392:, which is not smaller than 3256:. Here is a brief example: 2024:Properties of integer types 1953:yields a value of the type 1309:SCHAR_MIN == βˆ’128 1016:range. Specified since the 924:range. Specified since the 5215: 4519:Compatibility of C and C++ 3913:"C and C++ Integer Limits" 3752:Integer (computer science) 3655: 2781: 1313:SCHAR_MAX == 127 1210:the article on long double 5053:Strongly typed identifier 4601: 4248: 4150: 3307:has a corresponding type 2525: 2522: 2519: 2449:Fixed-width integer types 1802:Bit-precise integer types 5189:C (programming language) 3899:Representations of types 3603: 3461: 3375: 3324: 3281: 3258: 3175: 3088: 1793:/* this code will run */ 1742: 1695: 1640: 1454: 4 Unix, Microsoft 1020:version of the standard. 928:version of the standard. 56:Character classification 5128:Parametric polymorphism 1580:. Including the header 1377:The actual size of the 4524:Comparison with Pascal 4144:C programming language 4104:C11:The New C Standard 3747:Uninitialized variable 3171:linked data structures 1957:. The maximum size of 1841:. Therefore, the type 1688:evaluates to false if 1578:long double _Imaginary 975:unsigned long long int 188:C programming language 3874:. p. 25, Β§ 5.2.4.2.1 3851:. p. 22, Β§ 5.2.4.2.1 3164:flexible array member 2460:embedded environments 2229:(C23) - bit width of 2187:(C23) - bit width of 2145:(C23) - bit width of 2135:(C23) - bit width of 1483:object representation 1411:The minimum size for 1279:[βˆ’(2βˆ’1), 2βˆ’1] 1072:Converting from text: 109:Miscellaneous headers 3571:may be preserved if 3555:is larger than both 3249:up to and including 2832:Printf format string 2806:printf format string 2784:printf format string 1610:. Additionally, the 1558:long double _Complex 1492:is not smaller than 1388:is not smaller than 1349:for numerical output 1336:for numerical output 866:signed long long int 377:Of the same size as 343:[βˆ’127, +127] 337:Of the same size as 282:Minimum size (bits) 254:, and the modifiers 5133:Primitive data type 5038:Recursive data type 4891:Algebraic data type 4767:Quadruple precision 3971:. p. 56, Β§ 6.4.4.1 3937:. p. 37, Β§ 6.2.6.1 3718:<stdatomic.h> 3716:can be used if the 2909:Scanf format string 2810:scanf format string 2788:scanf format string 1277:The minimal ranges 5194:C standard library 5096:Abstract data type 4777:Extended precision 4736:Reduced precision 4038:pubs.opengroup.org 4034:"<limits.h>" 3535:The total size of 3277:"array of array …" 3005:. You can help by 2794:<inttypes.h> 2464:<inttypes.h> 2247:unsigned long long 1728:/* do something */ 1676:/* do something */ 1427:it is 32 bits and 1408:) can be smaller. 1190:extended precision 969:unsigned long long 495:unsigned short int 223:include directives 219:C standard library 101:Alternative tokens 36:C standard library 5176: 5175: 4908:Associative array 4772:Octuple precision 4621: 4620: 4361: 4360: 4089:. p. 37, Β§ 6.2.5 3973:Integer constants 3897:. p. 41, Β§ 6.2.6 3809:. p. 255, Β§ 7.18 3730:const-correctness 3670:. As of 2014 and 3591:Function pointers 3586:Function pointers 3235:elements of type 3023: 3022: 2775: 2774: 2110: 2085: 2060: 2036:(at least 8 bits) 1636:integer overflows 1612:<stdbool.h> 1605:Boolean data type 1582:<complex.h> 1574:double _Imaginary 1321:[βˆ’2, 2βˆ’1] 1295:[βˆ’2, 2βˆ’1] 1258: 1257: 1200:), the non-IEEE " 778:unsigned long int 285:Format specifier 221:, to be used via 184: 183: 86:Memory allocation 71:File input/output 16:(Redirected from 5206: 5148:Type constructor 5033:Opaque data type 4965:Record or Struct 4762:Double precision 4757:Single precision 4648: 4641: 4634: 4625: 4609: 4608: 4246: 4241:Standard library 4137: 4130: 4123: 4114: 4107: 4101: 4095: 4094: 4088: 4078: 4072: 4071: 4065: 4055: 4049: 4048: 4046: 4044: 4030: 4024: 4023: 4021: 4019: 4005: 3999: 3998: 3996: 3994: 3989:. The Open Group 3983: 3977: 3976: 3970: 3960: 3943: 3942: 3936: 3926: 3917: 3916: 3909: 3903: 3902: 3896: 3886: 3880: 3879: 3873: 3863: 3857: 3856: 3850: 3840: 3815: 3814: 3808: 3798: 3789: 3788: 3786: 3784: 3773: 3726:standard library 3723: 3719: 3715: 3707: 3699: 3689: 3679: 3640: 3637: 3634: 3631: 3628: 3625: 3622: 3619: 3616: 3613: 3610: 3607: 3600: 3597:in the variable 3596: 3578: 3575:is smaller than 3574: 3570: 3567:, some parts of 3566: 3562: 3558: 3554: 3550: 3546: 3542: 3538: 3531: 3528: 3525: 3522: 3519: 3516: 3513: 3510: 3507: 3504: 3501: 3498: 3495: 3492: 3489: 3486: 3483: 3480: 3477: 3474: 3471: 3468: 3465: 3445: 3444: 3441: 3438: 3435: 3432: 3427: 3422: 3416: 3409: 3406: 3403: 3400: 3397: 3394: 3391: 3388: 3385: 3382: 3379: 3372: 3368: 3361: 3358: 3355: 3352: 3349: 3346: 3343: 3340: 3337: 3334: 3331: 3328: 3321: 3312: 3306: 3303:Every data type 3294: 3291: 3288: 3285: 3271: 3268: 3265: 3262: 3255: 3248: 3244: 3238: 3234: 3224: 3212: 3209: 3206: 3203: 3200: 3197: 3194: 3191: 3188: 3185: 3182: 3179: 3149: 3146: 3143: 3140: 3137: 3134: 3131: 3128: 3125: 3122: 3119: 3116: 3113: 3110: 3107: 3104: 3101: 3098: 3095: 3092: 3085: 3081: 3068: 3058: 3048: 3039: 3018: 3015: 2997: 2990: 2981: 2975: 2971: 2967: 2960: 2953: 2943: 2939: 2935: 2931: 2927: 2919: 2904: 2898: 2894: 2890: 2883: 2876: 2866: 2862: 2858: 2854: 2850: 2842: 2823: 2819: 2815: 2814:<stdint.h> 2803: 2802:<stdint.h> 2799: 2795: 2771: 2763: 2758: 2753: 2748: 2738: 2730: 2725: 2720: 2715: 2705: 2693: 2684: 2675: 2666: 2652: 2640: 2631: 2622: 2613: 2599: 2587: 2578: 2569: 2560: 2517: 2477: 2473: 2472:<stdint.h> 2469: 2465: 2443: 2439: 2435: 2429: 2425: 2421: 2415: 2411: 2407: 2403: 2397: 2393: 2389: 2383: 2379: 2375: 2371: 2365: 2361: 2357: 2353: 2343: 2339: 2335: 2329: 2325: 2321: 2315: 2309: 2303: 2297: 2293: 2289: 2283: 2279: 2275: 2269: 2265: 2261: 2248: 2244: 2240: 2236: 2232: 2228: 2224: 2220: 2216: 2212: 2206: 2202: 2198: 2194: 2190: 2186: 2182: 2178: 2174: 2170: 2164: 2160: 2156: 2152: 2148: 2144: 2138: 2134: 2128: 2122: 2116: 2108: 2107: 2103: 2099: 2095: 2091: 2083: 2082: 2078: 2074: 2070: 2066: 2058: 2057: 2053: 2049: 2045: 2041: 2031: 2019: 2015: 2011: 2007: 2006:<limits.h> 1994: 1988: 1984: 1980: 1977:header in C++). 1976: 1972: 1964: 1961:is provided via 1960: 1956: 1952: 1946: 1940: 1936: 1935:<stddef.h> 1931: 1927: 1923: 1909: 1908: 1905: 1902: 1899: 1896: 1891: 1890: 1887: 1884: 1881: 1878: 1873: 1872: 1869: 1866: 1863: 1860: 1855: 1854: 1851: 1848: 1845: 1840: 1837:and is at least 1836: 1824: 1823: 1820: 1817: 1814: 1797: 1794: 1791: 1788: 1785: 1782: 1779: 1776: 1773: 1770: 1767: 1764: 1761: 1758: 1755: 1752: 1749: 1746: 1739: 1732: 1729: 1726: 1723: 1720: 1717: 1714: 1711: 1708: 1705: 1702: 1699: 1691: 1687: 1680: 1677: 1674: 1671: 1668: 1665: 1662: 1659: 1656: 1653: 1650: 1647: 1644: 1633: 1629: 1625: 1621: 1617: 1613: 1609: 1591: 1587: 1583: 1579: 1575: 1571: 1570:float _Imaginary 1559: 1555: 1551: 1540: 1536: 1532: 1526: 1522: 1511: 1507: 1499: 1495: 1491: 1480: 1473: 1464:microcontrollers 1449: 1445: 1437: 1430: 1426: 1423:is 16 bits, for 1422: 1418: 1414: 1403: 1399: 1395: 1391: 1387: 1371: 1368: 1359: 1356: 1350: 1348: 1343: 1337: 1335: 1330: 1324: 1322: 1314: 1310: 1306: 1296: 1291:two's complement 1283:ones' complement 1280: 1275: 1254: 1250: 1243: 1240: 1236: 1233: 1229: 1226: 1222: 1219: 1185: 1170: 1167: 1162: 1159: 1154: 1151: 1146: 1143: 1126: 1119: 1115: 1105: 1102: 1097: 1094: 1089: 1086: 1081: 1078: 1060: 1053: 1049: 1045: 1041: 1034: 1028: 1015: 1013: 1012: 1009: 1006: 1003: 1000: 997: 991: 977: 976: 970: 960: 956: 950: 946: 940: 936: 923: 921: 920: 917: 914: 911: 908: 905: 899: 898: 895: 892: 889: 886: 883: 867: 862: 861:signed long long 857: 852: 842: 838: 834: 830: 823: 817: 808: 806: 805: 802: 799: 793: 779: 774: 764: 760: 754: 750: 744: 740: 731: 729: 728: 725: 722: 716: 715: 712: 709: 693: 688: 683: 678: 668: 664: 658: 652: 643: 641: 640: 634: 623: 618: 604: 600: 594: 590: 581: 579: 578: 572: 571: 558: 553: 548: 534: 528: 519: 517: 516: 510: 496: 491: 477: 473: 467: 463: 454: 452: 451: 445: 444: 428: 427:signed short int 423: 418: 413: 399: 393: 384: 383:[0, 255] 374: 363: 359: 353: 344: 334: 323: 319: 313: 298: 273: 269: 265: 261: 257: 253: 249: 245: 241: 196:memory locations 176: 169: 162: 149: 140: 131: 122: 32: 21: 5214: 5213: 5209: 5208: 5207: 5205: 5204: 5203: 5179: 5178: 5177: 5172: 5153:Type conversion 5088: 5082: 5018:Enumerated type 4991: 4877: 4871:null-terminated 4847: 4812: 4700: 4657: 4652: 4622: 4617: 4597: 4581: 4534: 4528: 4512:other languages 4511: 4510:Comparison with 4505: 4442: 4380:Borland Turbo C 4357: 4297:Implementations 4292: 4235: 4189: 4146: 4141: 4111: 4110: 4102: 4098: 4086: 4080: 4079: 4075: 4066:. p. 67, Β§ 6.5 4063: 4057: 4056: 4052: 4042: 4040: 4032: 4031: 4027: 4017: 4015: 4007: 4006: 4002: 3992: 3990: 3985: 3984: 3980: 3968: 3962: 3961: 3946: 3934: 3928: 3927: 3920: 3915:. 21 July 2023. 3911: 3910: 3906: 3894: 3888: 3887: 3883: 3871: 3865: 3864: 3860: 3848: 3842: 3841: 3818: 3806: 3800: 3799: 3792: 3782: 3780: 3775: 3774: 3770: 3765: 3738: 3721: 3717: 3713: 3705: 3695: 3685: 3675: 3664:type qualifiers 3660: 3654: 3652:Type qualifiers 3642: 3641: 3638: 3635: 3632: 3629: 3626: 3623: 3620: 3617: 3614: 3611: 3608: 3605: 3598: 3594: 3588: 3576: 3572: 3568: 3564: 3560: 3556: 3552: 3548: 3544: 3540: 3539:is the size of 3536: 3533: 3532: 3529: 3526: 3523: 3520: 3517: 3514: 3511: 3508: 3505: 3502: 3499: 3496: 3493: 3490: 3487: 3484: 3481: 3478: 3475: 3472: 3469: 3466: 3463: 3452: 3442: 3439: 3436: 3433: 3430: 3425: 3420: 3414: 3411: 3410: 3407: 3404: 3401: 3398: 3395: 3392: 3389: 3386: 3383: 3380: 3377: 3370: 3366: 3363: 3362: 3359: 3356: 3353: 3350: 3347: 3344: 3341: 3338: 3335: 3332: 3329: 3326: 3319: 3310: 3304: 3301: 3296: 3295: 3292: 3289: 3286: 3283: 3273: 3272: 3269: 3266: 3263: 3260: 3250: 3246: 3242: 3236: 3232: 3222: 3221:For every type 3219: 3214: 3213: 3210: 3207: 3204: 3201: 3198: 3195: 3192: 3189: 3186: 3183: 3180: 3177: 3151: 3150: 3147: 3144: 3141: 3138: 3135: 3132: 3129: 3126: 3123: 3120: 3117: 3114: 3111: 3108: 3105: 3102: 3099: 3096: 3093: 3090: 3083: 3080:struct birthday 3079: 3076: 3062: 3052: 3043: 3034: 3028: 3019: 3013: 3010: 3003:needs expansion 2988: 2977: 2973: 2969: 2962: 2955: 2949: 2941: 2940:(unsigned) and 2937: 2933: 2932:(hexadecimal), 2929: 2925: 2914: 2911: 2900: 2896: 2892: 2885: 2878: 2872: 2864: 2863:(unsigned) and 2860: 2856: 2855:(hexadecimal), 2852: 2848: 2837: 2834: 2821: 2817: 2813: 2801: 2797: 2793: 2790: 2782:Main articles: 2780: 2769: 2761: 2756: 2751: 2746: 2736: 2728: 2723: 2718: 2713: 2699: 2687: 2678: 2669: 2660: 2646: 2634: 2625: 2616: 2607: 2593: 2581: 2572: 2563: 2554: 2526:Unsigned types 2475: 2471: 2467: 2463: 2451: 2444:is at least 10. 2441: 2437: 2433: 2428:LDBL_MAX_10_EXP 2427: 2423: 2419: 2413: 2409: 2405: 2401: 2396:LDBL_MIN_10_EXP 2395: 2391: 2387: 2381: 2377: 2373: 2369: 2363: 2359: 2355: 2351: 2341: 2337: 2333: 2327: 2323: 2319: 2313: 2308:FLT_EVAL_METHOD 2307: 2301: 2295: 2291: 2287: 2281: 2277: 2273: 2267: 2263: 2259: 2256: 2246: 2242: 2238: 2234: 2230: 2226: 2222: 2218: 2214: 2210: 2204: 2200: 2196: 2192: 2188: 2184: 2180: 2176: 2172: 2168: 2162: 2158: 2154: 2150: 2146: 2142: 2136: 2132: 2126: 2120: 2114: 2105: 2101: 2097: 2093: 2089: 2080: 2076: 2072: 2068: 2064: 2055: 2051: 2047: 2043: 2039: 2029: 2026: 2017: 2014:<float.h> 2013: 2009: 2005: 2002: 1992: 1986: 1982: 1978: 1974: 1966: 1962: 1958: 1954: 1948: 1944: 1938: 1934: 1929: 1925: 1919: 1916: 1906: 1903: 1900: 1897: 1894: 1888: 1885: 1882: 1879: 1876: 1870: 1867: 1864: 1861: 1858: 1852: 1849: 1846: 1843: 1838: 1835:BITINT_MAXWIDTH 1834: 1833:is provided by 1821: 1818: 1815: 1812: 1804: 1799: 1798: 1795: 1792: 1789: 1786: 1783: 1780: 1777: 1774: 1771: 1768: 1765: 1762: 1759: 1756: 1753: 1750: 1747: 1744: 1737: 1734: 1733: 1730: 1727: 1724: 1721: 1718: 1715: 1712: 1709: 1706: 1703: 1700: 1697: 1689: 1685: 1682: 1681: 1678: 1675: 1672: 1669: 1666: 1663: 1660: 1657: 1654: 1651: 1648: 1645: 1642: 1631: 1627: 1623: 1619: 1615: 1614:header defines 1611: 1607: 1598: 1589: 1585: 1581: 1577: 1573: 1569: 1557: 1554:double _Complex 1553: 1549: 1544:C99 also added 1538: 1535:FLT_EVAL_METHOD 1534: 1528: 1524: 1520: 1509: 1505: 1497: 1493: 1489: 1478: 1471: 1447: 1443: 1435: 1428: 1424: 1420: 1416: 1412: 1401: 1397: 1393: 1389: 1385: 1375: 1374: 1369: 1362: 1357: 1353: 1346: 1344: 1340: 1333: 1331: 1327: 1320: 1315:) for an 8-bit 1312: 1308: 1298: 1294: 1278: 1276: 1263: 1252: 1248: 1241: 1238: 1237: 1234: 1231: 1230: 1227: 1224: 1223: 1220: 1217: 1183: 1173: 1168: 1165: 1160: 1157: 1152: 1149: 1144: 1141: 1124: 1117: 1113: 1108: 1103: 1100: 1095: 1092: 1087: 1084: 1079: 1076: 1058: 1051: 1047: 1043: 1039: 1032: 1026: 1010: 1007: 1004: 1001: 998: 995: 993: 989: 987: 980: 974: 973: 968: 958: 954: 948: 944: 938: 934: 918: 915: 912: 909: 906: 903: 901: 896: 893: 890: 887: 884: 881: 879: 877: 870: 865: 860: 855: 850: 840: 836: 832: 828: 821: 815: 803: 800: 797: 795: 791: 789: 782: 777: 772: 762: 758: 752: 748: 742: 738: 726: 723: 720: 718: 713: 710: 707: 705: 703: 696: 692:signed long int 691: 686: 681: 676: 666: 662: 656: 650: 638: 636: 632: 630: 626: 621: 616: 602: 598: 592: 588: 576: 574: 569: 567: 565: 561: 556: 551: 546: 532: 526: 514: 512: 508: 506: 499: 494: 489: 475: 471: 465: 461: 449: 447: 442: 440: 438: 431: 426: 421: 416: 411: 397: 391: 382: 372: 361: 357: 351: 342: 332: 321: 317: 311: 296: 267: 263: 259: 255: 251: 247: 243: 239: 236: 231: 180: 143: 134: 125: 116: 91:Process control 28: 23: 22: 15: 12: 11: 5: 5212: 5210: 5202: 5201: 5196: 5191: 5181: 5180: 5174: 5173: 5171: 5170: 5165: 5160: 5155: 5150: 5145: 5140: 5135: 5130: 5125: 5124: 5123: 5113: 5108: 5106:Data structure 5103: 5098: 5092: 5090: 5084: 5083: 5081: 5080: 5075: 5070: 5065: 5060: 5055: 5050: 5045: 5040: 5035: 5030: 5025: 5020: 5015: 5010: 5005: 4999: 4997: 4993: 4992: 4990: 4989: 4988: 4987: 4977: 4972: 4967: 4962: 4957: 4952: 4951: 4950: 4940: 4935: 4930: 4925: 4920: 4915: 4910: 4905: 4900: 4899: 4898: 4887: 4885: 4879: 4878: 4876: 4875: 4874: 4873: 4863: 4857: 4855: 4849: 4848: 4846: 4845: 4840: 4839: 4838: 4833: 4822: 4820: 4814: 4813: 4811: 4810: 4805: 4800: 4799: 4798: 4788: 4787: 4786: 4785: 4784: 4774: 4769: 4764: 4759: 4754: 4753: 4752: 4747: 4745:Half precision 4742: 4732:Floating point 4729: 4724: 4719: 4714: 4708: 4706: 4702: 4701: 4699: 4698: 4693: 4688: 4683: 4678: 4673: 4667: 4665: 4659: 4658: 4653: 4651: 4650: 4643: 4636: 4628: 4619: 4618: 4616: 4615: 4602: 4599: 4598: 4596: 4595: 4593:Dennis Ritchie 4589: 4587: 4583: 4582: 4580: 4579: 4574: 4569: 4564: 4559: 4554: 4549: 4544: 4538: 4536: 4530: 4529: 4527: 4526: 4521: 4515: 4513: 4507: 4506: 4504: 4503: 4498: 4493: 4488: 4483: 4478: 4473: 4468: 4463: 4458: 4452: 4450: 4444: 4443: 4441: 4440: 4435: 4422: 4417: 4412: 4407: 4402: 4397: 4392: 4387: 4382: 4377: 4371: 4369: 4363: 4362: 4359: 4358: 4356: 4355: 4350: 4345: 4340: 4335: 4330: 4329: 4328: 4318: 4313: 4312: 4311: 4300: 4298: 4294: 4293: 4291: 4290: 4285: 4280: 4275: 4270: 4268:Dynamic memory 4265: 4260: 4255: 4249: 4243: 4237: 4236: 4234: 4233: 4228: 4223: 4218: 4213: 4208: 4203: 4197: 4195: 4191: 4190: 4188: 4187: 4182: 4177: 4172: 4167: 4162: 4157: 4151: 4148: 4147: 4142: 4140: 4139: 4132: 4125: 4117: 4109: 4108: 4096: 4073: 4050: 4025: 4000: 3978: 3944: 3918: 3904: 3881: 3858: 3816: 3790: 3767: 3766: 3764: 3761: 3760: 3759: 3754: 3749: 3744: 3737: 3734: 3668:qualified type 3658:Type qualifier 3656:Main article: 3653: 3650: 3604: 3587: 3584: 3462: 3451: 3448: 3376: 3325: 3300: 3297: 3282: 3259: 3218: 3215: 3176: 3089: 3075: 3072: 3071: 3070: 3060: 3050: 3041: 3027: 3024: 3021: 3020: 3000: 2998: 2987: 2984: 2910: 2907: 2833: 2830: 2779: 2776: 2773: 2772: 2767: 2764: 2759: 2754: 2749: 2744: 2743:Maximum width 2740: 2739: 2734: 2731: 2726: 2721: 2716: 2711: 2707: 2706: 2697: 2694: 2685: 2676: 2667: 2658: 2654: 2653: 2644: 2641: 2632: 2623: 2614: 2605: 2601: 2600: 2591: 2588: 2579: 2570: 2561: 2552: 2548: 2547: 2546:Maximum value 2544: 2543:Minimum value 2541: 2538: 2537:Maximum value 2535: 2534:Minimum value 2532: 2528: 2527: 2524: 2521: 2520:Type category 2508: 2507: 2504: 2501: 2494: 2487: 2450: 2447: 2446: 2445: 2431: 2424:DBL_MAX_10_EXP 2420:FLT_MAX_10_EXP 2417: 2399: 2392:DBL_MIN_10_EXP 2388:FLT_MIN_10_EXP 2385: 2367: 2349: 2331: 2317: 2311: 2305: 2299: 2285: 2271: 2255: 2252: 2251: 2250: 2235:unsigned short 2208: 2166: 2140: 2130: 2124: 2118: 2112: 2087: 2062: 2037: 2025: 2022: 2001: 1998: 1915: 1912: 1803: 1800: 1743: 1696: 1641: 1597: 1594: 1592:respectively. 1550:float _Complex 1530:<math.h> 1512:respectively. 1373: 1372: 1360: 1351: 1338: 1325: 1287:sign-magnitude 1260: 1259: 1256: 1255: 1246: 1244: 1215: 1213: 1204:" (128 bits), 1186: 1180: 1179: 1176: 1174: 1172: 1171: 1163: 1155: 1147: 1138: 1136: 1134: 1127: 1121: 1120: 1111: 1109: 1107: 1106: 1098: 1090: 1082: 1073: 1070: 1068: 1061: 1055: 1054: 1036: 1029: 1024: 1021: 981: 979: 978: 971: 965: 962: 961: 952: 941: 932: 929: 871: 869: 868: 863: 858: 853: 847: 844: 843: 825: 818: 813: 810: 783: 781: 780: 775: 769: 766: 765: 756: 745: 736: 733: 697: 695: 694: 689: 684: 679: 673: 670: 669: 660: 653: 648: 645: 627: 625: 624: 619: 613: 610: 609: 606: 595: 586: 583: 562: 560: 559: 554: 549: 543: 540: 539: 536: 529: 524: 521: 500: 498: 497: 492: 490:unsigned short 486: 483: 482: 479: 468: 459: 456: 432: 430: 429: 424: 419: 414: 408: 405: 404: 401: 394: 389: 386: 375: 369: 368: 365: 354: 349: 346: 335: 329: 328: 325: 314: 309: 306: 299: 293: 292: 289: 286: 283: 280: 277: 235: 232: 230: 227: 182: 181: 179: 178: 171: 164: 156: 153: 152: 151: 150: 141: 132: 123: 111: 110: 106: 105: 104: 103: 98: 93: 88: 83: 78: 73: 68: 63: 58: 53: 45: 44: 43:General topics 40: 39: 26: 24: 14: 13: 10: 9: 6: 4: 3: 2: 5211: 5200: 5197: 5195: 5192: 5190: 5187: 5186: 5184: 5169: 5166: 5164: 5161: 5159: 5156: 5154: 5151: 5149: 5146: 5144: 5141: 5139: 5136: 5134: 5131: 5129: 5126: 5122: 5119: 5118: 5117: 5114: 5112: 5109: 5107: 5104: 5102: 5099: 5097: 5094: 5093: 5091: 5085: 5079: 5076: 5074: 5071: 5069: 5066: 5064: 5061: 5059: 5056: 5054: 5051: 5049: 5046: 5044: 5041: 5039: 5036: 5034: 5031: 5029: 5028:Function type 5026: 5024: 5021: 5019: 5016: 5014: 5011: 5009: 5006: 5004: 5001: 5000: 4998: 4994: 4986: 4983: 4982: 4981: 4978: 4976: 4973: 4971: 4968: 4966: 4963: 4961: 4958: 4956: 4953: 4949: 4946: 4945: 4944: 4941: 4939: 4936: 4934: 4931: 4929: 4926: 4924: 4921: 4919: 4916: 4914: 4911: 4909: 4906: 4904: 4901: 4897: 4894: 4893: 4892: 4889: 4888: 4886: 4884: 4880: 4872: 4869: 4868: 4867: 4864: 4862: 4859: 4858: 4856: 4854: 4850: 4844: 4841: 4837: 4834: 4832: 4829: 4828: 4827: 4824: 4823: 4821: 4819: 4815: 4809: 4806: 4804: 4801: 4797: 4794: 4793: 4792: 4789: 4783: 4780: 4779: 4778: 4775: 4773: 4770: 4768: 4765: 4763: 4760: 4758: 4755: 4751: 4748: 4746: 4743: 4741: 4738: 4737: 4735: 4734: 4733: 4730: 4728: 4725: 4723: 4720: 4718: 4715: 4713: 4710: 4709: 4707: 4703: 4697: 4694: 4692: 4689: 4687: 4684: 4682: 4679: 4677: 4674: 4672: 4669: 4668: 4666: 4664: 4663:Uninterpreted 4660: 4656: 4649: 4644: 4642: 4637: 4635: 4630: 4629: 4626: 4614: 4613: 4604: 4603: 4600: 4594: 4591: 4590: 4588: 4584: 4578: 4575: 4573: 4570: 4568: 4565: 4563: 4560: 4558: 4555: 4553: 4550: 4548: 4545: 4543: 4540: 4539: 4537: 4531: 4525: 4522: 4520: 4517: 4516: 4514: 4508: 4502: 4499: 4497: 4496:Visual Studio 4494: 4492: 4489: 4487: 4486:GNOME Builder 4484: 4482: 4479: 4477: 4474: 4472: 4469: 4467: 4464: 4462: 4459: 4457: 4454: 4453: 4451: 4449: 4445: 4439: 4436: 4434: 4430: 4426: 4425:Visual Studio 4423: 4421: 4418: 4416: 4413: 4411: 4408: 4406: 4403: 4401: 4398: 4396: 4393: 4391: 4388: 4386: 4383: 4381: 4378: 4376: 4373: 4372: 4370: 4368: 4364: 4354: 4351: 4349: 4346: 4344: 4341: 4339: 4336: 4334: 4331: 4327: 4324: 4323: 4322: 4319: 4317: 4314: 4310: 4307: 4306: 4305: 4302: 4301: 4299: 4295: 4289: 4286: 4284: 4281: 4279: 4276: 4274: 4271: 4269: 4266: 4264: 4261: 4259: 4256: 4254: 4251: 4250: 4247: 4244: 4242: 4238: 4232: 4229: 4227: 4224: 4222: 4219: 4217: 4214: 4212: 4209: 4207: 4204: 4202: 4199: 4198: 4196: 4192: 4186: 4183: 4181: 4178: 4176: 4173: 4171: 4168: 4166: 4163: 4161: 4158: 4156: 4153: 4152: 4149: 4145: 4138: 4133: 4131: 4126: 4124: 4119: 4118: 4115: 4106:, Thomas Plum 4105: 4100: 4097: 4092: 4085: 4084: 4077: 4074: 4069: 4062: 4061: 4054: 4051: 4039: 4035: 4029: 4026: 4014: 4010: 4004: 4001: 3988: 3982: 3979: 3974: 3967: 3966: 3959: 3957: 3955: 3953: 3951: 3949: 3945: 3940: 3933: 3932: 3925: 3923: 3919: 3914: 3908: 3905: 3900: 3893: 3892: 3885: 3882: 3877: 3870: 3869: 3862: 3859: 3854: 3847: 3846: 3839: 3837: 3835: 3833: 3831: 3829: 3827: 3825: 3823: 3821: 3817: 3812: 3805: 3804: 3797: 3795: 3791: 3779: 3772: 3769: 3762: 3758: 3755: 3753: 3750: 3748: 3745: 3743: 3740: 3739: 3735: 3733: 3731: 3727: 3711: 3703: 3698: 3693: 3688: 3683: 3678: 3673: 3669: 3666:, yielding a 3665: 3659: 3651: 3649: 3647: 3646:void pointers 3602: 3592: 3585: 3583: 3580: 3460: 3457: 3449: 3447: 3423: 3374: 3323: 3317: 3313: 3298: 3280: 3278: 3257: 3253: 3240: 3228: 3216: 3174: 3172: 3167: 3165: 3161: 3157: 3087: 3073: 3066: 3061: 3056: 3051: 3047: 3042: 3038: 3033: 3032: 3031: 3025: 3017: 3008: 3004: 3001:This section 2999: 2996: 2992: 2991: 2985: 2983: 2980: 2966: 2959: 2952: 2947: 2923: 2918: 2908: 2906: 2903: 2889: 2882: 2875: 2870: 2846: 2841: 2831: 2829: 2827: 2811: 2807: 2789: 2785: 2777: 2768: 2765: 2760: 2755: 2750: 2745: 2742: 2741: 2735: 2732: 2727: 2722: 2717: 2712: 2709: 2708: 2703: 2698: 2695: 2691: 2686: 2682: 2677: 2673: 2668: 2664: 2659: 2656: 2655: 2650: 2645: 2642: 2638: 2633: 2629: 2624: 2620: 2615: 2611: 2606: 2603: 2602: 2597: 2592: 2589: 2585: 2580: 2576: 2571: 2567: 2562: 2558: 2553: 2550: 2549: 2545: 2542: 2539: 2536: 2533: 2530: 2529: 2523:Signed types 2518: 2515: 2513: 2505: 2502: 2499: 2495: 2492: 2488: 2485: 2481: 2480: 2479: 2461: 2456: 2448: 2432: 2418: 2400: 2386: 2368: 2360:LDBL_MANT_DIG 2350: 2347: 2332: 2318: 2312: 2306: 2300: 2286: 2282:LDBL_TRUE_MIN 2272: 2258: 2257: 2253: 2243:unsigned long 2231:unsigned char 2209: 2167: 2165:by definition 2161:are equal to 2141: 2131: 2125: 2119: 2113: 2088: 2063: 2038: 2035: 2028: 2027: 2023: 2021: 1999: 1997: 1990: 1970: 1951: 1942: 1922: 1913: 1911: 1832: 1828: 1809: 1801: 1741: 1694: 1690:unsigned char 1639: 1637: 1606: 1602: 1595: 1593: 1567: 1563: 1547: 1542: 1531: 1527:, defined in 1518: 1513: 1503: 1486: 1484: 1479:unsigned char 1475: 1469: 1465: 1461: 1457: 1453: 1442:In practice, 1440: 1432: 1409: 1407: 1382: 1380: 1367: 1365: 1361: 1355: 1352: 1342: 1339: 1329: 1326: 1318: 1305: 1301: 1292: 1288: 1284: 1274: 1272: 1270: 1268: 1266: 1262: 1247: 1245: 1216: 1214: 1212:for details. 1211: 1207: 1203: 1202:double-double 1199: 1198:padding bytes 1195: 1191: 1187: 1182: 1181: 1177: 1175: 1164: 1156: 1148: 1140: 1139: 1137: 1135: 1132: 1128: 1123: 1122: 1112: 1110: 1099: 1091: 1083: 1075: 1074: 1071: 1069: 1066: 1062: 1057: 1056: 1037: 1030: 1025: 1022: 1019: 985: 982: 972: 967: 966: 964: 963: 953: 942: 933: 930: 927: 875: 872: 864: 859: 856:long long int 854: 849: 848: 846: 845: 826: 819: 814: 811: 787: 784: 776: 773:unsigned long 771: 770: 768: 767: 757: 746: 737: 734: 701: 698: 690: 685: 680: 675: 674: 672: 671: 661: 654: 649: 646: 628: 620: 615: 614: 612: 611: 607: 596: 587: 584: 563: 555: 550: 545: 544: 542: 541: 537: 530: 525: 522: 504: 501: 493: 488: 487: 485: 484: 480: 469: 460: 457: 436: 433: 425: 420: 415: 410: 409: 407: 406: 402: 395: 390: 387: 380: 376: 373:unsigned char 371: 370: 366: 355: 350: 347: 340: 336: 331: 330: 326: 315: 310: 307: 304: 300: 295: 294: 290: 287: 284: 281: 278: 275: 274: 271: 233: 229:Primary types 228: 226: 224: 220: 216: 212: 208: 203: 201: 197: 193: 189: 177: 172: 170: 165: 163: 158: 157: 155: 154: 147: 142: 138: 133: 129: 124: 120: 115: 114: 113: 112: 107: 102: 99: 97: 94: 92: 89: 87: 84: 82: 79: 77: 74: 72: 69: 67: 64: 62: 59: 57: 54: 52: 49: 48: 47: 46: 41: 37: 33: 30: 19: 4933:Intersection 4610: 4466:Code::Blocks 4438:Watcom C/C++ 4230: 4226:Preprocessor 4206:Header files 4099: 4090: 4082: 4076: 4067: 4059: 4053: 4041:. Retrieved 4037: 4028: 4016:. Retrieved 4012: 4003: 3991:. Retrieved 3981: 3972: 3964: 3938: 3930: 3907: 3898: 3890: 3884: 3875: 3867: 3861: 3852: 3844: 3810: 3802: 3781:. Retrieved 3771: 3667: 3661: 3643: 3589: 3581: 3534: 3453: 3418: 3413:The element 3412: 3364: 3308: 3302: 3276: 3274: 3251: 3230: 3220: 3168: 3152: 3077: 3064: 3054: 3045: 3036: 3029: 3014:October 2011 3011: 3007:adding to it 3002: 2978: 2964: 2957: 2950: 2945: 2921: 2916: 2912: 2901: 2887: 2880: 2873: 2868: 2844: 2839: 2835: 2791: 2701: 2689: 2680: 2671: 2662: 2648: 2636: 2627: 2618: 2609: 2604:Least width 2595: 2583: 2574: 2565: 2556: 2551:Exact width 2511: 2509: 2497: 2490: 2483: 2452: 2410:LDBL_MAX_EXP 2378:LDBL_MIN_EXP 2362:– number of 2356:DBL_MANT_DIG 2352:FLT_MANT_DIG 2342:LDBL_EPSILON 2278:DBL_TRUE_MIN 2274:FLT_TRUE_MIN 2249:respectively 2239:unsigned int 2227:ULLONG_WIDTH 2207:respectively 2003: 1991: 1943: 1917: 1839:ULLONG_WIDTH 1830: 1826: 1805: 1735: 1683: 1599: 1596:Boolean type 1543: 1514: 1487: 1482: 1476: 1441: 1433: 1410: 1383: 1376: 1354: 1341: 1328: 1316: 1303: 1299: 983: 873: 785: 699: 622:unsigned int 502: 434: 422:signed short 378: 338: 279:Explanation 237: 214: 204: 191: 185: 81:Localization 50: 29: 5163:Type theory 5158:Type system 5008:Bottom type 4955:Option type 4896:generalized 4782:Long double 4727:Fixed point 4557:Objective-C 4338:Windows CRT 4068:Expressions 4013:www.gnu.org 3419:pointer to 3309:pointer to 3156:initialized 2944:(integer). 2928:(decimal), 2917:{fmt}{type} 2867:(integer). 2851:(decimal), 2840:{fmt}{type} 2770:UINTMAX_MAX 2737:UINTPTR_MAX 2442:DECIMAL_DIG 2438:DECIMAL_DIG 2434:DECIMAL_DIG 2406:DBL_MAX_EXP 2402:FLT_MAX_EXP 2374:DBL_MIN_EXP 2370:FLT_MIN_EXP 2338:DBL_EPSILON 2334:FLT_EPSILON 2223:ULONG_WIDTH 2215:USHRT_WIDTH 2211:UCHAR_WIDTH 2189:signed char 2185:LLONG_WIDTH 2169:SCHAR_WIDTH 2159:SCHAR_WIDTH 2155:UCHAR_WIDTH 1539:long double 1490:long double 1317:signed char 1184:long double 687:signed long 333:signed char 211:real number 66:Mathematics 5199:Data types 5183:Categories 5068:Empty type 5063:Type class 5013:Collection 4970:Refinement 4948:metaobject 4796:signedness 4655:Data types 4533:Descendant 4405:Norcroft C 4231:Data types 4180:Embedded C 3993:9 November 3783:18 January 3763:References 3456:union type 3231:"array of 3074:Structures 2757:INTMAX_MAX 2752:INTMAX_MIN 2724:INTPTR_MAX 2719:INTPTR_MIN 2647:UINT_LEAST 2635:uint_least 2302:FLT_ROUNDS 2219:UINT_WIDTH 2181:LONG_WIDTH 2173:SHRT_WIDTH 2151:CHAR_WIDTH 2143:CHAR_WIDTH 2139:, always 1 2133:BOOL_WIDTH 2127:MB_LEN_MAX 2106:ULLONG_MAX 1406:bit-fields 1033:ULLONG_MAX 557:signed int 234:Main types 192:data types 51:Data types 5143:Subtyping 5138:Interface 5121:metaclass 5073:Unit type 5043:Semaphore 5023:Exception 4928:Inductive 4918:Dependent 4883:Composite 4861:Character 4843:Reference 4740:Minifloat 4696:Bit array 4535:languages 4367:Compilers 4309:libhybris 4211:Operators 4201:Functions 3225:, except 2986:Functions 2936:(octal), 2859:(octal), 2822:uintmax_t 2798:cinttypes 2762:uintmax_t 2729:uintptr_t 2700:UINT_FAST 2688:uint_fast 2626:INT_LEAST 2617:INT_LEAST 2608:int_least 2468:cinttypes 2414:FLT_RADIX 2382:FLT_RADIX 2364:FLT_RADIX 2314:FLT_RADIX 2205:long long 2177:INT_WIDTH 2102:ULONG_MAX 2094:USHRT_MAX 2090:UCHAR_MAX 2081:LLONG_MAX 2065:SCHAR_MAX 2056:LLONG_MIN 2040:SCHAR_MIN 1993:ptrdiff_t 1941:in C++). 1930:ptrdiff_t 1736:The type 1684:Variable 1590:imaginary 1566:imaginary 1470:requires 1458:, modern 1434:The type 1429:long long 1386:long long 984:Long long 949:LLONG_MAX 945:LLONG_MIN 874:Long long 851:long long 822:ULONG_MAX 533:USHRT_MAX 417:short int 398:UCHAR_MAX 362:SCHAR_MAX 358:SCHAR_MIN 200:variables 76:Date/time 5168:Variable 5058:Top type 4923:Equality 4831:physical 4808:Rational 4803:Interval 4750:bfloat16 4612:Category 4586:Designer 4501:NetBeans 4491:KDevelop 4471:CodeLite 4316:dietlibc 4283:Variadic 4258:File I/O 4194:Features 3757:Offsetof 3742:C syntax 3736:See also 3697:restrict 3687:volatile 3615:my_int_f 3599:my_int_f 3551:– since 3494:unsigned 3299:Pointers 3142:birthday 3094:birthday 3063:_Decimal 3044:_Decimal 2976:, where 2899:, where 2818:intmax_t 2796:header ( 2747:intmax_t 2714:intptr_t 2710:Pointer 2679:INT_FAST 2670:INT_FAST 2661:int_fast 2657:Fastest 2474:header ( 2466:header ( 2328:LDBL_DIG 2296:LDBL_MAX 2268:LDBL_MIN 2163:CHAR_BIT 2121:CHAR_MAX 2115:CHAR_MIN 2098:UINT_MAX 2077:LONG_MAX 2069:SHRT_MAX 2052:LONG_MIN 2044:SHRT_MIN 2030:CHAR_BIT 2016:header ( 2008:header ( 1973:header ( 1969:stdint.h 1963:SIZE_MAX 1937:header ( 1895:unsigned 1877:unsigned 1825:, where 1643:unsigned 1603:added a 1525:double_t 1502:IEEE 754 1031:[0, 820:[0, 753:LONG_MAX 749:LONG_MIN 682:long int 657:UINT_MAX 655:[0, 617:unsigned 531:[0, 476:SHRT_MAX 472:SHRT_MIN 396:[0, 322:CHAR_MAX 318:CHAR_MIN 260:unsigned 217:for the 146:stdarg.h 137:setjmp.h 119:assert.h 5111:Generic 5087:Related 5003:Boolean 4960:Product 4836:virtual 4826:Address 4818:Pointer 4791:Integer 4722:Decimal 4717:Complex 4705:Numeric 4476:Eclipse 4429:Express 4185:MISRA C 4043:30 July 4018:30 July 3706:_Atomic 3371:int *** 3367:char ** 3316:pointer 2920:. Here 2843:. Here 2476:cstdint 2324:DBL_DIG 2320:FLT_DIG 2292:DBL_MAX 2288:FLT_MAX 2264:DBL_MIN 2260:FLT_MIN 2073:INT_MAX 2048:INT_MIN 2010:climits 1983:ssize_t 1975:cstdint 1939:cstddef 1921:typedef 1898:_BitInt 1880:_BitInt 1862:_BitInt 1844:_BitInt 1813:_BitInt 1586:complex 1548:types: 1546:complex 1521:float_t 1379:integer 603:INT_MAX 599:INT_MIN 303:integer 215:Headers 207:integer 186:In the 128:errno.h 96:Signals 61:Strings 5101:Boxing 5089:topics 5048:Stream 4985:tagged 4943:Object 4866:String 4456:Anjuta 4353:uClibc 4348:Newlib 4326:EGLIBC 4304:Bionic 4273:String 4221:Syntax 4216:String 4155:ANSI C 3714:atomic 3704:) and 3506:double 3488:struct 3450:Unions 3431:sizeof 3345:circle 3333:square 3217:Arrays 3196:struct 3178:struct 3139:struct 3091:struct 3053:_Float 3035:_Float 2946:{type} 2869:{type} 2245:, and 2203:, and 2018:cfloat 1987:size_t 1979:size_t 1959:size_t 1955:size_t 1950:sizeof 1945:size_t 1926:size_t 1859:signed 1806:Since 1564:added 1510:double 1494:double 1456:MS-DOS 1125:double 809:range. 732:range. 644:range. 582:range. 552:signed 520:range. 455:range. 385:range. 345:range. 288:Range 266:, and 256:signed 252:double 38:(libc) 4996:Other 4980:Union 4913:Class 4903:Array 4686:Tryte 4567:Limbo 4481:Geany 4461:CLion 4385:Clang 4333:klibc 4321:glibc 4288:POSIX 4091:Types 4087:(PDF) 4064:(PDF) 3969:(PDF) 3935:(PDF) 3895:(PDF) 3872:(PDF) 3849:(PDF) 3807:(PDF) 3722:const 3677:const 3630:& 3549:u.s.d 3545:u.s.u 3479:float 3464:union 3121:month 2963:LEAST 2922:{fmt} 2886:LEAST 2845:{fmt} 2540:Type 2531:Type 2193:short 2137:_Bool 2109:(C99) 2084:(C99) 2059:(C99) 1745:_Bool 1738:_Bool 1698:_Bool 1632:_Bool 1628:_Bool 1624:false 1608:_Bool 1506:float 1498:float 1468:POSIX 1460:Linux 1452:SunOS 1448:short 1417:short 1400:. As 1398:short 1297:with 1178:none 1059:float 1038:both 1035:] 1014:] 988:[ 951:] 943:[ 922:] 878:[ 827:both 824:] 807:] 790:[ 755:] 747:[ 730:] 704:[ 659:] 642:] 631:[ 608:none 605:] 597:[ 580:] 566:[ 535:] 518:] 507:[ 503:Short 478:] 470:[ 453:] 439:[ 435:Short 412:short 400:] 364:] 356:[ 324:] 316:[ 276:Type 264:short 248:float 5116:Kind 5078:Void 4938:List 4853:Text 4691:Word 4681:Trit 4676:Byte 4577:Vala 4562:Alef 4448:IDEs 4415:SDCC 4343:musl 4278:Time 4263:Math 4253:Char 4045:2022 4020:2022 3995:2011 3785:2016 3559:and 3547:and 3421:char 3393:char 3378:char 3369:and 3357:oval 3339:long 3327:char 3314:. A 3227:void 3205:next 3199:node 3181:node 3145:John 3130:year 3103:name 3100:char 3084:John 2956:FAST 2879:FAST 2820:and 2808:and 2792:The 2786:and 2704:_MAX 2683:_MAX 2674:_MIN 2651:_MAX 2630:_MAX 2621:_MIN 2598:_MAX 2594:UINT 2582:uint 2577:_MAX 2568:_MIN 2453:The 2201:long 2157:and 2147:char 2034:byte 1971:> 1967:< 1928:and 1856:(or 1646:char 1622:and 1620:true 1616:bool 1588:and 1523:and 1515:The 1508:and 1472:char 1444:char 1425:long 1419:and 1413:char 1402:char 1390:long 1347:%hhu 1334:%hhi 1311:and 1046:and 1027:%llu 939:%lld 935:%lli 835:and 786:Long 700:Long 677:long 379:char 339:char 297:char 268:long 250:and 240:char 209:and 148:> 144:< 139:> 135:< 130:> 126:< 121:> 117:< 4975:Set 4671:Bit 4542:C++ 4433:C++ 4420:TCC 4410:PCC 4400:LCC 4395:ICC 4390:GCC 4375:ACK 4175:C23 4170:C17 4165:C11 4160:C99 3710:C11 3702:C99 3694:), 3692:C89 3684:), 3682:C89 3672:C11 3633:abs 3621:int 3606:int 3595:abs 3577:u.f 3573:u.i 3569:u.f 3565:u.i 3541:u.s 3497:int 3470:int 3446:). 3351:int 3284:int 3264:cat 3261:int 3190:val 3187:int 3160:C99 3127:int 3118:int 3112:day 3109:int 3009:. 2974:MAX 2970:PTR 2915:SCN 2897:MAX 2893:PTR 2838:PRI 2826:C99 2573:INT 2564:INT 2555:int 2455:C99 2197:int 1808:C23 1707:256 1655:256 1601:C99 1562:C11 1517:C99 1436:int 1421:int 1394:int 1345:or 1332:or 1251:or 1242:%LA 1239:%La 1235:%LE 1232:%Le 1228:%LG 1225:%Lg 1221:%LF 1218:%Lf 1169:%lA 1166:%la 1161:%lE 1158:%le 1153:%lG 1150:%lg 1145:%lF 1142:%lf 1116:or 1050:or 1042:or 1018:C99 1011:615 1008:551 1005:709 1002:073 999:744 996:446 957:or 937:or 926:C99 919:807 916:775 913:854 910:036 907:372 904:223 897:807 894:775 891:854 888:036 885:372 882:223 839:or 831:or 816:%lu 804:295 801:967 798:294 761:or 743:%ld 741:or 739:%li 727:647 724:483 721:147 714:647 711:483 708:147 665:or 639:535 591:or 577:767 575:+32 570:767 568:βˆ’32 547:int 527:%hu 515:535 466:%hd 464:or 462:%hi 450:767 448:+32 443:767 441:βˆ’32 244:int 198:or 5185:: 4572:Go 4547:C# 4431:, 4427:, 4036:. 4011:. 3947:^ 3921:^ 3819:^ 3793:^ 3648:. 3618:)( 3601:: 3579:. 3454:A 3443:10 3440:== 3437:pa 3426:pa 3415:pc 3405:); 3402:pa 3384:pc 3254:βˆ’1 3211:}; 3173:: 3166:. 3136:}; 2972:, 2968:, 2961:, 2954:, 2895:, 2891:, 2884:, 2877:, 2828:. 2692:_t 2665:_t 2639:_t 2612:_t 2586:_t 2559:_t 2426:, 2422:, 2408:, 2404:, 2394:, 2390:, 2376:, 2372:, 2358:, 2354:, 2344:– 2340:, 2336:, 2326:, 2322:, 2294:, 2290:, 2280:, 2276:, 2266:, 2262:, 2241:, 2237:, 2233:, 2225:, 2221:, 2217:, 2213:, 2199:, 2195:, 2191:, 2183:, 2179:, 2175:, 2171:, 2153:, 2149:; 2104:, 2100:, 2096:, 2092:, 2079:, 2075:, 2071:, 2067:, 2054:, 2050:, 2046:, 2042:, 1989:. 1924:s 1781:== 1772:if 1713:if 1661:if 1626:. 1576:, 1572:, 1560:. 1556:, 1552:, 1541:. 1466:. 1363:^ 1302:β‰₯ 1289:, 1285:, 1264:^ 1104:%A 1101:%a 1096:%E 1093:%e 1088:%G 1085:%g 1080:%F 1077:%f 1052:LL 1048:ll 1023:64 994:18 992:, 959:LL 955:ll 947:, 931:64 902:+9 900:, 880:βˆ’9 812:32 794:, 751:, 735:32 719:+2 717:, 706:βˆ’2 651:%u 647:16 637:65 635:, 601:, 593:%d 589:%i 585:16 573:, 538:β€” 523:16 513:65 511:, 481:β€” 474:, 458:16 446:, 403:β€” 392:%c 367:β€” 360:, 352:%c 327:β€” 320:, 312:%c 262:, 258:, 246:, 242:, 190:, 4647:e 4640:t 4633:v 4552:D 4136:e 4129:t 4122:v 4093:. 4070:. 4047:. 4022:. 3997:. 3975:. 3941:. 3901:. 3878:. 3855:. 3813:. 3787:. 3708:( 3700:( 3690:( 3680:( 3636:; 3627:= 3624:) 3612:* 3609:( 3561:f 3557:i 3553:s 3537:u 3530:; 3527:u 3524:} 3521:; 3518:s 3515:} 3512:; 3509:d 3503:; 3500:u 3491:{ 3485:; 3482:f 3476:; 3473:i 3467:{ 3434:* 3399:* 3396:( 3387:; 3381:* 3360:; 3354:* 3348:; 3342:* 3336:; 3330:* 3320:* 3311:T 3305:T 3290:; 3287:a 3267:; 3252:N 3247:0 3243:N 3239:" 3237:T 3233:N 3223:T 3208:; 3202:* 3193:; 3184:{ 3148:; 3133:; 3124:; 3115:; 3106:; 3097:{ 3067:x 3065:N 3057:x 3055:N 3046:N 3037:N 3016:) 3012:( 2979:n 2965:n 2958:n 2951:n 2942:i 2938:u 2934:o 2930:x 2926:d 2902:n 2888:n 2881:n 2874:n 2865:i 2861:u 2857:o 2853:x 2849:d 2766:0 2733:0 2702:n 2696:0 2690:n 2681:n 2672:n 2663:n 2649:n 2643:0 2637:n 2628:n 2619:n 2610:n 2596:n 2590:0 2584:n 2575:n 2566:n 2557:n 2512:n 2498:n 2491:n 2484:n 1907:) 1904:1 1901:( 1889:) 1886:2 1883:( 1871:) 1868:2 1865:( 1853:) 1850:2 1847:( 1831:N 1827:N 1822:) 1819:N 1816:( 1796:} 1790:{ 1787:) 1784:b 1778:a 1775:( 1769:; 1766:2 1763:= 1760:b 1757:, 1754:1 1751:= 1748:a 1731:} 1725:{ 1722:) 1719:b 1716:( 1710:; 1704:= 1701:b 1686:b 1679:} 1673:{ 1670:) 1667:b 1664:( 1658:; 1652:= 1649:b 1323:. 1304:n 1300:m 1253:L 1249:l 1118:F 1114:f 1044:U 1040:u 990:0 841:L 837:l 833:U 829:u 796:4 792:0 763:L 759:l 667:U 663:u 633:0 509:0 388:8 348:8 308:8 175:e 168:t 161:v 20:)

Index

C variable types and declarations
C standard library
Data types
Character classification
Strings
Mathematics
File input/output
Date/time
Localization
Memory allocation
Process control
Signals
Alternative tokens
assert.h
errno.h
setjmp.h
stdarg.h
v
t
e
C programming language
memory locations
variables
integer
real number
C standard library
include directives
integer
C99
C99

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑