for

Usage for loop: as the declaration of the loop

mtx_plain

Defined in header <threads.h> enum { mtx_plain = /* unspecified */, mtx_recursive = /* unspecified */, mtx_timed = /* unspecified */ }; (since C11) When passed to mtx_init, identifies the type of a mutex to create. Constant Explanation mtx_plain plain mutex mtx_recursive recursive mutex mtx_timed timed mutex References C11 standard (ISO/IEC 9899:2011): 7.26.1/5 mtx_plain, mtx_recursive, mtx_timed (p: 377) See also mtx_init (C11)

_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

putchar

Defined in header <stdio.h> int putchar( int ch ); Writes a character ch to stdout. Internally, the character is converted to unsigned char just before being written. Equivalent to putc(ch, stdout). Parameters ch - character to be written Return value On success, returns the written character. On failure, returns EOF and sets the error indicator (see ferror()) on stdout. Example putchar with error checking. #include <stdio.h> #include <stdlib.h>

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.

cnd_init

Defined in header <threads.h> int cnd_init( cnd_t* cond ); (since C11) Initializes new condition variable. The object pointed to by cond will be set to value that identifies the condition variable. Parameters cond - pointer to a variable to store identifier of the condition variable to Return value thrd_success if the condition variable was successfully created. Otherwise returns thrd_nomem if there was insufficient amount of memory or thrd_error if another er

Pseudo-random number generation

Defined in header <stdlib.h> rand generates a pseudo-random number (function) srand seeds pseudo-random number generator (function) RAND_MAX maximum possible value generated by rand() (macro constant) References C11 standard (ISO/IEC 9899:2011): 7.22.2 Pseudo-random sequence generation functions (p: 346-347) C99 standard (ISO/IEC 9899:1999): 7.20.2 Pseudo-random sequence generation functions (p: 312-313) C89/C90 standard (ISO/IEC 9899:1990): 4.10.2 Pseudo-ra

kill_dependency

Defined in header <stdatomic.h> A kill_dependency(A y); (since C11) Informs the compiler that the dependency tree started by an memory_order_consume atomic load operation does not extend past the return value of kill_dependency; that is, the argument does not carry a dependency into the return value. The function is implemented as a macro. A is the type of y. Parameters y - the expression whose return value is to be removed from a dependency tree Return value

localeconv

Defined in header <locale.h> lconv* localeconv(); The localeconv function obtains a pointer to a static object of type lconv, which represents numeric and monetary formatting rules of the current C locale. Parameters (none). Return value pointer to the current lconv object. Notes Modifying the object references through the returned pointer is undefined behavior. localeconv modifies a static object, calling it from different threads without synchronization is undefi

max_align_t

Defined in header <stddef.h> typedef /*implementation-defined*/ max_align_t; (since C11) max_align_t is a type whose alignment requirement is at least as strict (as large) as that of every scalar type. Notes Pointers returned by allocation functions such as malloc are suitably aligned for any object, which means they are aligned at least as strict as max_align_t. max_align_t is usually synonymous with the largest scalar type, which is long double on most platforms, and i