Strings library

Null-terminated byte string management Null-terminated multibyte string management Null-terminated wide string management See also C++ documentation for Strings library

conjf

Defined in header <complex.h> float complex conjf( float complex z ); (1) (since C99) double complex conj( double complex z ); (2) (since C99) long double complex conjl( long double complex z ); (3) (since C99) Defined in header <tgmath.h> #define conj( z ) (4) (since C99) 1-3) Computes the complex conjugate of z by reversing the sign of the imaginary part. 4) Type-generic macro: if z has type long double complex, long double imag

isnormal

Defined in header <math.h> #define isnormal(arg) /* implementation defined */ (since C99) Determines if the given floating point number arg is normal, i.e. is neither zero, subnormal, infinite, nor NaN. The macro returns an integral value. FLT_EVAL_METHOD is ignored: even if the argument is evaluated with more range and precision than its type, it is first converted to its semantic type, and the classification is based on that. Parameters arg - floating point value

atomic_flag_test_and_set

Defined in header <stdatomic.h> _Bool atomic_flag_test_and_set( volatile atomic_flag* obj ); (1) (since C11) _Bool atomic_flag_test_and_set_explicit( volatile atomic_flag* obj, memory_order order ); (2) (since C11) Atomically changes the state of a atomic_flag pointed to by obj to set (true) and returns the previous value. The first version orders memory accesses according to memory_order_seq_cst, the second version orders memory accesses according to order. The argum

ATOMIC_FLAG_INIT

Defined in header <stdatomic.h> #define ATOMIC_FLAG_INIT /* unspecified */ (since C11) Expands to an expression that can be used to initialize atomic_flag type. The value atomic_flag that is not initialized using this macro is undefined. References C11 standard (ISO/IEC 9899:2011): 7.17.1/3 ATOMIC_FLAG_INIT (p: 273) 7.17.8/4 ATOMIC_FLAG_INIT (p: 285) See also ATOMIC_VAR_INIT (C11) initializes a new atomic object (function macro)

mbsinit

Defined in header <wchar.h> int mbsinit( const mbstate_t* ps); (since C95) If ps is not a null pointer, the mbsinit function determines whether the pointed-to mbstate_t object describes the initial conversion state. Notes Although a zero-initialized mbstate_t always represents the initial conversion state, there may be other values of mbstate_t that also represent the initial conversion state. Parameters ps - pointer to the mbstate_t object to examine Return

isinf

Defined in header <math.h> #define isinf(arg) /* implementation defined */ (since C99) Determines if the given floating point number arg is positive or negative infinity. The macro returns an integral value. FLT_EVAL_METHOD is ignored: even if the argument is evaluated with more range and precision than its type, it is first converted to its semantic type, and the classification is based on that. Parameters arg - floating point value Return value Nonzero integ

C keywords

This is a list of reserved keywords in C. Since they are used by the language, these keywords are not available for re-definition. autobreakcasecharconstcontinuedefaultdodoubleelseenumextern. floatforgotoifinline (since C99)intlongregisterrestrict (since C99)returnshort. signedsizeofstaticstructswitchtypedefunionunsignedvoidvolatilewhile. _Alignas (since C11)_Alignof (since C11)_Atomic (since C11)_Bool (since C99)_Complex (since C99)_Generic (since C11)_Imaginary (since C99)_Noreturn (si

Basic concepts

This section provides definitions for the specific terminology and the concepts used when describing the C programming language. A C program is a sequence of text files (typically header and source files) that contain declarations. They undergo translation to become an executable program, which is executed when the OS calls its main function (unless it is itself the OS or another freestanding program, in which case the entry point is implementation-defined). Certain words in a C program have sp

cpowf

Defined in header <complex.h> float complex cpowf( float complex x, float complex y ); (1) (since C99) double complex cpow( double complex x, double complex y ); (2) (since C99) long double complex cpowl( long double complex x, long double complex y ); (3) (since C99) Defined in header <tgmath.h> #define pow( x, y ) (4) (since C99) 1-3) Computes the complex power function xy, with branch cut for the first parameter along the negati