Scope

Each identifier that appears in a C program is only visible (that is, may be used) in some possibly discontiguous portion of the source code called its scope. Within a scope, an identifier may designate more than one entity only if the entities are in different name spaces. C has four kinds of scopes: block scope file scope function scope function prototype scope Nested scopes If two different entities named by the same identifier are in scope at the same time, and they belong to t

switch

Usage switch statement: as the declaration of the statement

Thread support library

If the macro constant __STDC_NO_THREADS__(C11) is defined by the compiler, the header <threads.h> and all of the names listed here are not provided. Threads Defined in header <threads.h> thrd_t implementation-defined complete object type identifying a thread thrd_create (C11) creates a thread (function) thrd_equal (C11) checks if two identifiers refer to the same thread (function) thrd_current (C11) obtains the current thread identifier (function) t

break

Usage break statement: as the declaration of the statement

Lifetime

Every object in C exists, has a constant address, retains its last-stored value (except when the value is indeterminate), and, for VLA, retains its size (since C99) over a portion of program execution known as this object's lifetime. For the objects that are declared with automatic, static, and thread storage duration, lifetime equals their storage duration (note the difference between non-VLA and VLA automatic storage duration). For the objects with allocated storage duration, the lifetime beg

tm

Defined in header <time.h> struct tm; Structure holding a calendar date and time broken down into its components. Member objects int tm_sec seconds after the minute – [0, 61](until C99) / [0, 60] (since C99)[note 1] int tm_min minutes after the hour – [0, 59] int tm_hour hours since midnight – [0, 23] int tm_mday day of the month – [1, 31] int tm_mon months since January – [0, 11] int tm_year years since 1900 int tm_wday days since Sunday – [0,

cexpf

Defined in header <complex.h> float complex cexpf( float complex z ); (1) (since C99) double complex cexp( double complex z ); (2) (since C99) long double complex cexpl( long double complex z ); (3) (since C99) Defined in header <tgmath.h> #define exp( z ) (4) (since C99) 1-3) Computes the complex base-e exponential of z. 4) Type-generic macro: If z has type long double complex, cexpl is called. if z has type double complex, cexp

fegetround

Defined in header <fenv.h> int fesetround( int round ); (1) (since C99) int fegetround(); (2) (since C99) 1) Attempts to establish the floating-point rounding direction equal to the argument argument round, which is expected to be one of the floating point rounding macros. 2) Returns the value of the floating point rounding macro that corresponds to the current rounding direction. Parameters round - rounding direction, one of floating point rounding macros

iswupper

Defined in header <wctype.h> int iswupper( wint_t ch ); (since C95) Checks if the given wide character is an uppercase letter, i.e. one of ABCDEFGHIJKLMNOPQRSTUVWXYZ or any uppercase letter specific to the current locale. Parameters ch - wide character Return value Non-zero value if the wide character is an uppercase letter, zero otherwise. Example #include <stdio.h> #include <wchar.h> #include <wctype.h> #include <locale.h> int

Union declaration

A union is a type consisting of a sequence of members whose storage overlaps (as opposed to struct, which is a type consisting of a sequence of members whose storage is allocated in an ordered sequence). The value of at most one of the members can be stored in a union at any one time. The type specifier for a union is identical to the struct type specifier except for the keyword used: Syntax union name(optional) { struct-declaration-list } (1) union name (2) name - the