See also type system overview and arithmetic types defined by the language.
Defined in header <stddef.h> |
|
---|---|
unsigned integer type returned by the sizeof operator (typedef) |
|
signed integer type returned when subtracting two pointers (typedef) |
|
(C23) | the type of the predefined null pointer constant nullptr (typedef) |
implementation-defined null pointer constant (macro constant) |
|
(C11) | a type with alignment requirement as great as any other scalar type (typedef) |
byte offset from the beginning of a struct type to specified member (function macro) |
|
Defined in header <stdbool.h> |
|
bool
(C99)(until C23) | convenience macro, expands to _Bool (keyword macro) |
true
(C99)(until C23) | expands to integer constant 1 (macro constant) |
false
(C99)(until C23) | expands to integer constant 0 (macro constant) |
__bool_true_false_are_defined
(C99)(deprecated in C23) | expands to integer constant 1 (macro constant) |
Defined in header <stdalign.h> |
|
alignas
(C11)(until C23) | convenience macro, expands to keyword _Alignas (keyword macro) |
alignof
(C11)(until C23) | convenience macro, expands to keyword _Alignof (keyword macro) |
__alignas_is_defined
(C11)(until C23) | expands to integer constant 1 (macro constant) |
__alignof_is_defined
(C11)(until C23) | expands to integer constant 1 (macro constant) |
Defined in header <stdnoreturn.h> |
|
noreturn
(C11)(deprecated in C23) | convenience macro, expands to _Noreturn (keyword macro) |
The type of A program may undefine and perhaps then redefine the macros |
(since C99) (until C23) |
The type of If | (since C23) |
#include <stdio.h> #include <stdbool.h> #include <stdalign.h> int main(void) { printf("%d %d %d\n", true && false, true || false, !false); printf("%d %d\n", true ^ true, true + true); printf("%zu\n", alignof(short)); }
Possible output:
0 1 1 0 2 2
C++ documentation for Type support library |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/c/types