alignas

Appears in the declaration syntax as one of the type specifiers to modify the alignment requirement of the object being declared. Syntax _Alignas ( expression ) (1) (since C11) _Alignas ( type ) (2) (since C11) expression - any integer constant expression whose value is a valid alignment or zero type - any type name This keyword is also available as convenience macro alignas, available in the header <stdalign.h>. Explanation The alignas specifier can only

Algorithms

Defined in header <stdlib.h> qsortqsort_s (C11) sorts a range of elements with unspecified type (function) bsearchbsearch_s (C11) searches an array for an element of unspecified type (function) References C11 standard (ISO/IEC 9899:2011): 7.22.5 Searching and sorting utilities (p: 354-356) K.3.6.3 Searching and sorting utilities (p: 607-609) C99 standard (ISO/IEC 9899:1999): 7.20.5 Searching and sorting utilities (p: 318-319) C89/C90 standard (ISO/IEC 9899:

acosh

Defined in header <math.h> float acoshf( float arg ); (1) (since C99) double acosh( double arg ); (2) (since C99) long double acoshl( long double arg ); (3) (since C99) Defined in header <tgmath.h> #define acosh( arg ) (4) (since C99) 1-3) Computes the inverse hyperbolic cosine of arg. 4) Type-generic macro: If the argument has type long double, acoshl is called. Otherwise, if the argument has integer type or the type double, acos

acos

Defined in header <math.h> float acosf( float arg ); (1) (since C99) double acos( double arg ); (2) long double acosl( long double arg ); (3) (since C99) Defined in header <tgmath.h> #define acos( arg ) (4) (since C99) 1-3) Computes the principal value of the arc cosine of arg. 4) Type-generic macro: If the argument has type long double, acosl is called. Otherwise, if the argument has integer type or the type double, acos is calle

abs

Defined in header <stdlib.h> int abs( int n ); long labs( long n ); long long llabs( long long n ); (since C99) Defined in header <inttypes.h> intmax_t imaxabs( intmax_t n ); (since C99) Computes the absolute value of an integer number. The behavior is undefined if the result cannot be represented by the return type. Parameters n - integer value Return value The absolute value of n (i.e. |n|), if it is representable.

abort_handler_s

Defined in header <stdlib.h> void abort_handler_s( const char * restrict msg, void * restrict ptr, errno_t error ); (since C11) Writes an implementation-defined message to stderr which must include the string pointed to by msg and calls abort(). A pointer to this function can be passed to set_constraint_handler_s to establish a runtime constraints violation handler. As with all bounds-checked functions, abort_

abort

Defined in header <stdlib.h> void abort(); Causes abnormal program termination unless SIGABRT is being caught by a signal handler passed to signal and the handler does not return. Functions passed to atexit() are not called. Whether open resources such as files are closed is implementation defined. Implementation defined status is returned to the host environment that indicates unsuccessful execution. Parameters (none). Return value (none). Example #include <s

#pragma directive

Implementation defined behavior is controlled by #pragma directive. Syntax #pragma pragma_params (1) _Pragma ( string-literal ) (2) (since C99) 1) Behaves in an implementation-defined manner (unless pragma_params is one of the standard pragmas shown below. 2) Removes the encoding prefix (if any), the outer quotes, and leading/trailing whitespace from string-literal, replaces each \" with " and each \\ with \, then tokenizes the result (as in translation stage 3), and then use

#line directive

Changes the current line number and file name in the preprocessor. Syntax #line lineno (1) #line lineno "filename" (2) Explanation 1) Changes the current preprocessor line number to lineno. Occurrences of the macro __LINE__ beyond this point will expand to lineno plus the number of actual source code lines encountered since. 2) Also changes the current preprocessor file name to filename. Occurrences of the macro __FILE__ beyond this point will produce filename. Any preproc

#include directive

Includes another source file into the current source file at the line immediately after the directive. Syntax #include <filename> (1) #include "filename" (2) Explanation Includes source file, identified by filename, into the current source file at the line immediately after the directive. The first version of the directive searches only standard include directories. The standard C++ library, as well as standard C library, is implicitly included in standard include dire