_Thread_local

Usage thread storage-class specifier.

_Imaginary_I

Defined in header <complex.h> #define _Imaginary_I /* unspecified */ (since C99) The _Imaginary_I macro expands to a value of type const float _Imaginary with the value of the imaginary unit. As with any pure imaginary number support in C, this macro is only defined if the imaginary numbers are supported. A compiler that defines __STDC_IEC_559_COMPLEX__ is not required to support imaginary numbers. POSIX recommends checking if the macro _Imaginary_I is defined to identify

_Noreturn function specifier

Specifies that the function does not return to its point of invocation. Syntax _Noreturn function_declaration (since C11) Explanation The _Noreturn keyword appears in a function declaration and specifies that the function does not return by executing the return statement or by reaching the end of the function body (it may return by executing longjmp). If the function declared _Noreturn returns, the behavior is undefined. A compiler diagnostic is recommended if this can be detected

_Noreturn

Usage _Noreturn function specifier

_Static_assert

Usage static assert declaration

_Alignof operator

Queries the alignment requirement of its operand type. Syntax _Alignof( type-name ) (since C11) This operator is typically used through the convenience macro alignof, which is provided in the header stdalign.h. Explanation Returns the alignment requirement of the type named by type-name. If type-name is an array type, the result is the alignment requirement of the array element type. The type-name cannot be function type or an incomplete type. The result is an integer constant of

_Imaginary

Usage imaginary floating type specifier

_Complex_I

Defined in header <complex.h> #define _Complex_I /* unspecified */ (since C99) The _Complex_I macro expands to a value of type const float _Complex with the value of the imaginary unit. Notes This macro may be used when I is not available, such as when it has been undefined by the application. Unlike _Imaginary_I and CMPLX, use of this macro to construct a complex number may lose the sign of zero on the imaginary component. Example #include <stdio.h> #include

_Generic

Usage Type-generic expression

_Exit

Defined in header <stdlib.h> void _Exit( int exit_code ); (since C99) Causes normal program termination to occur without completely cleaning the resources. Destructors of variables with automatic, thread local and static storage durations are not called. Functions passed to at_quick_exit() or atexit() are not called. Whether open resources such as files are closed is implementation defined. If exit_code is EXIT_FAILURE, an implementation-defined status, indicating unsuccess