{"id":985,"date":"2024-07-22T09:54:09","date_gmt":"2024-07-22T07:54:09","guid":{"rendered":"https:\/\/wi.pb.edu.pl\/p\/?page_id=985"},"modified":"2024-07-22T09:56:57","modified_gmt":"2024-07-22T07:56:57","slug":"c-standard-library","status":"publish","type":"page","link":"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/","title":{"rendered":"C Standard Library"},"content":{"rendered":"<h1>C Standard Library<\/h1>\n<h2>Contents<\/h2>\n<ul>\n<li><code>&lt;assert.h&gt;<\/code>&nbsp;: Diagnostics<\/li>\n<li><code>&lt;ctype.h&gt;<\/code>&nbsp;: Character Class Tests<\/li>\n<li><code>&lt;errno.h&gt;<\/code>&nbsp;: Error Codes Reported by (Some) Library Functions<\/li>\n<li><code>&lt;float.h&gt;<\/code>&nbsp;: Implementation-defined Floating-Point Limits<\/li>\n<li><code>&lt;limits.h&gt;<\/code>&nbsp;: Implementation-defined Limits<\/li>\n<li><code>&lt;locale.h&gt;<\/code>&nbsp;: Locale-specific Information<\/li>\n<li><code>&lt;math.h&gt;<\/code>&nbsp;: Mathematical Functions<\/li>\n<li><code>&lt;setjmp.h&gt;<\/code>&nbsp;: Non-local Jumps<\/li>\n<li><code>&lt;signal.h&gt;<\/code>&nbsp;: Signals<\/li>\n<li><code>&lt;stdarg.h&gt;<\/code>&nbsp;: Variable Argument Lists<\/li>\n<li><code>&lt;stddef.h&gt;<\/code>&nbsp;: Definitions of General Use<\/li>\n<li><code>&lt;stdio.h&gt;<\/code>&nbsp;: Input and Output<\/li>\n<li><code>&lt;stdlib.h&gt;<\/code>&nbsp;: Utility functions<\/li>\n<li><code>&lt;string.h&gt;<\/code>&nbsp;: String functions<\/li>\n<li><code>&lt;time.h&gt;<\/code>&nbsp;: Time and Date functions<\/li>\n<\/ul>\n<h2>&lt;assert.h&gt;<\/h2>\n<dl>\n<dt><code>void assert(int&nbsp;<var>expression<\/var>);<\/code><\/dt>\n<dd><em>Macro<\/em>&nbsp;used for internal error detection. (Ignored if&nbsp;<code>NDEBUG<\/code>&nbsp;is defined where&nbsp;<code>&lt;assert.h&gt;<\/code>&nbsp;is included.) If&nbsp;<var>expression<\/var>&nbsp;equals zero, message printed on&nbsp;<code>stderr<\/code>&nbsp;and&nbsp;abort&nbsp;called to terminate execution. Source filename and line number in message are from preprocessor macros&nbsp;<code>__FILE__<\/code>&nbsp;and&nbsp;<code>__LINE__<\/code>.<\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;ctype.h&gt;<\/h2>\n<dl>\n<dt><code>int isalnum(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd><code>isalpha(<var>c<\/var>)<\/code>&nbsp;or&nbsp;<code>isdigit(<var>c<\/var>)<\/code><\/dd>\n<dt><code>int isalpha(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd><code>isupper(<var>c<\/var>)<\/code>&nbsp;or&nbsp;<code>islower(<var>c<\/var>)<\/code><\/dd>\n<dt><code>int iscntrl(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>is control character. In ASCII, control characters are&nbsp;<code>0x00<\/code>&nbsp;(<code>NUL<\/code>) to&nbsp;<code>0x1F<\/code>&nbsp;(<code>US<\/code>), and&nbsp;<code>0x7F<\/code>&nbsp;(<code>DEL<\/code>)<\/dd>\n<dt><code>int isdigit(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>is decimal digit<\/dd>\n<dt><code>int isgraph(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>is printing character other than space<\/dd>\n<dt><code>int islower(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>is lower-case letter<\/dd>\n<dt><code>int isprint(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>is printing character (including space). In ASCII, printing characters are&nbsp;<code>0x20<\/code>&nbsp;(<code>' '<\/code>) to&nbsp;<code>0x7E<\/code>&nbsp;(<code>'~'<\/code>)<\/dd>\n<dt><code>int ispunct(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>is printing character other than space, letter, digit<\/dd>\n<dt><code>int isspace(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>is space, formfeed, newline, carriage return, tab, vertical tab<\/dd>\n<dt><code>int isupper(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>is upper-case letter<\/dd>\n<dt><code>int isxdigit(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>is hexadecimal digit<\/dd>\n<dt><code>int tolower(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>return lower-case equivalent<\/dd>\n<dt><code>int toupper(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>return upper-case equivalent<\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;errno.h&gt;<\/h2>\n<dl>\n<dt><code>errno<\/code><\/dt>\n<dd>object to which&nbsp;<strong>certain<\/strong>&nbsp;library functions assign specific positive values on error<\/dd>\n<dt><code>EDOM<\/code><\/dt>\n<dd>code used for domain errors<\/dd>\n<dt><code>ERANGE<\/code><\/dt>\n<dd>code used for range errors<\/dd>\n<\/dl>\n<p>Notes:<\/p>\n<ul>\n<li>other implementation-defined error values are permitted<\/li>\n<li>to determine the value (if any) assigned to&nbsp;errno&nbsp;by a library function, a program should assign zero to&nbsp;errno&nbsp;immediately prior to the function call<\/li>\n<\/ul>\n[Contents]\n<h2>&lt;float.h&gt;<\/h2>\n<dl>\n<dt><code>FLT_RADIX<\/code><\/dt>\n<dd>radix of floating-point representations<\/dd>\n<dt><code>FLT_ROUNDS<\/code><\/dt>\n<dd>floating-point rounding mode<\/dd>\n<\/dl>\n<p>Where the prefix &#8222;<code>FLT<\/code>&#8221; pertains to type&nbsp;<code>float<\/code>, &#8222;<code>DBL<\/code>&#8221; to type&nbsp;<code>double<\/code>, and &#8222;<code>LDBL<\/code>&#8221; to type&nbsp;<code>long double<\/code>:<\/p>\n<dl>\n<dt><code>FLT_DIG<\/code><\/dt>\n<dt><code>DBL_DIG<\/code><\/dt>\n<dt><code>LDBL_DIG<\/code><\/dt>\n<dd>precision (in decimal digits)<\/dd>\n<dt><code>FLT_EPSILON<\/code><\/dt>\n<dt><code>DBL_EPSILON<\/code><\/dt>\n<dt><code>LDBL_EPSILON<\/code><\/dt>\n<dd>smallest number&nbsp;<var>x<\/var>&nbsp;such that&nbsp;<code>1.0 +&nbsp;<var>x<\/var>&nbsp;!= 1.0<\/code><\/dd>\n<dt><code>FLT_MANT_DIG<\/code><\/dt>\n<dt><code>DBL_MANT_DIG<\/code><\/dt>\n<dt><code>LDBL_MANT_DIG<\/code><\/dt>\n<dd>number of digits, base&nbsp;<code>FLT_RADIX<\/code>, in mantissa<\/dd>\n<dt><code>FLT_MAX<\/code><\/dt>\n<dt><code>DBL_MAX<\/code><\/dt>\n<dt><code>LDBL_MAX<\/code><\/dt>\n<dd>maximum number<\/dd>\n<dt><code>FLT_MAX_EXP<\/code><\/dt>\n<dt><code>DBL_MAX_EXP<\/code><\/dt>\n<dt><code>LDBL_MAX_EXP<\/code><\/dt>\n<dd>largest positive integer exponent to which&nbsp;<code>FLT_RADIX<\/code>&nbsp;can be raised and remain representable<\/dd>\n<dt><code>FLT_MIN<\/code><\/dt>\n<dt><code>DBL_MIN<\/code><\/dt>\n<dt><code>LDBL_MIN<\/code><\/dt>\n<dd>minimum normalised number<\/dd>\n<dt><code>FLT_MIN_EXP<\/code><\/dt>\n<dt><code>DBL_MIN_EXP<\/code><\/dt>\n<dt><code>LDBL_MIN_EXP<\/code><\/dt>\n<dd>smallest negative integer exponent to which&nbsp;<code>FLT_RADIX<\/code>&nbsp;can be raised and remain representable<\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;limits.h&gt;<\/h2>\n<dl>\n<dt><code>CHAR_BIT<\/code><\/dt>\n<dd>number of bits in a&nbsp;<code>char<\/code><\/dd>\n<dt><code>CHAR_MAX<\/code><\/dt>\n<dd>maximum value of type&nbsp;<code>char<\/code><\/dd>\n<dt><code>CHAR_MIN<\/code><\/dt>\n<dd>minimum value of type&nbsp;<code>char<\/code><\/dd>\n<dt><code>SCHAR_MAX<\/code><\/dt>\n<dd>maximum value of type&nbsp;<code>signed char<\/code><\/dd>\n<dt><code>SCHAR_MIN<\/code><\/dt>\n<dd>minimum value of type&nbsp;<code>signed char<\/code><\/dd>\n<dt><code>UCHAR_MAX<\/code><\/dt>\n<dd>maximum value of type&nbsp;<code>unsigned char<\/code><\/dd>\n<dt><code>SHRT_MAX<\/code><\/dt>\n<dd>maximum value of type&nbsp;<code>short<\/code><\/dd>\n<dt><code>SHRT_MIN<\/code><\/dt>\n<dd>minimum value of type&nbsp;<code>short<\/code><\/dd>\n<dt><code>USHRT_MAX<\/code><\/dt>\n<dd>maximum value of type&nbsp;<code>unsigned short<\/code><\/dd>\n<dt><code>INT_MAX<\/code><\/dt>\n<dd>maximum value of type&nbsp;<code>int<\/code><\/dd>\n<dt><code>INT_MIN<\/code><\/dt>\n<dd>minimum value of type&nbsp;<code>int<\/code><\/dd>\n<dt><code>UINT_MAX<\/code><\/dt>\n<dd>maximum value of type&nbsp;<code>unsigned int<\/code><\/dd>\n<dt><code><a name=\"LONG_MAX\"><\/a>LONG_MAX<\/code><\/dt>\n<dd>maximum value of type&nbsp;<code>long<\/code><\/dd>\n<dt><code><a name=\"LONG_MIN\"><\/a>LONG_MIN<\/code><\/dt>\n<dd>minimum value of type&nbsp;<code>long<\/code><\/dd>\n<dt><code><a name=\"ULONG_MAX\"><\/a>ULONG_MAX<\/code><\/dt>\n<dd>maximum value of type&nbsp;<code>unsigned long<\/code><\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;locale.h&gt;<\/h2>\n<dl>\n<dt><code>struct lconv<\/code><\/dt>\n<dd>Describes formatting of monetary and other numeric values:<\/p>\n<dl>\n<dt><code>char*&nbsp;<a name=\"decimal_point\"><\/a>decimal_point;<\/code><\/dt>\n<dd>decimal point for non-monetary values<\/dd>\n<dt><code>char* grouping;<\/code><\/dt>\n<dd>sizes of digit groups for non-monetary values<\/dd>\n<dt><code>char* thousands_sep;<\/code><\/dt>\n<dd>separator for digit groups for non-monetary values (left of &#8222;decimal point&#8221;)<\/dd>\n<dt><code>char* currency_symbol;<\/code><\/dt>\n<dd>currency symbol<\/dd>\n<dt><code>char* int_curr_symbol;<\/code><\/dt>\n<dd>international currency symbol<\/dd>\n<dt><code>char* mon_decimal_point;<\/code><\/dt>\n<dd>decimal point for monetary values<\/dd>\n<dt><code>char* mon_grouping;<\/code><\/dt>\n<dd>sizes of digit groups for monetary values<\/dd>\n<dt><code>char* mon_thousands_sep;<\/code><\/dt>\n<dd>separator for digit groups for monetary values (left of &#8222;decimal point&#8221;)<\/dd>\n<dt><code>char* negative_sign;<\/code><\/dt>\n<dd>negative sign for monetary values<\/dd>\n<dt><code>char* positive_sign;<\/code><\/dt>\n<dd>positive sign for monetary values<\/dd>\n<dt><code>char frac_digits;<\/code><\/dt>\n<dd>number of digits to be displayed to right of &#8222;decimal point&#8221; for monetary values<\/dd>\n<dt><code>char int_frac_digits;<\/code><\/dt>\n<dd>number of digits to be displayed to right of &#8222;decimal point&#8221; for international monetary values<\/dd>\n<dt><code>char n_cs_precedes;<\/code><\/dt>\n<dd>whether currency symbol precedes (<code>1<\/code>) or follows (<code>0<\/code>) negative monetary values<\/dd>\n<dt><code>char n_sep_by_space;<\/code><\/dt>\n<dd>whether currency symbol is (<code>1<\/code>) or is not (<code>0<\/code>) separated by space from negative monetary values<\/dd>\n<dt><code><a name=\"n_sign_posn\"><\/a>char n_sign_posn;<\/code><\/dt>\n<dd>format for negative monetary values:<\/p>\n<dl>\n<dt><code>0<\/code><\/dt>\n<dd>parentheses surround quantity and currency symbol<\/dd>\n<dt><code>1<\/code><\/dt>\n<dd>sign precedes quantity and currency symbol<\/dd>\n<dt><code>2<\/code><\/dt>\n<dd>sign follows quantity and currency symbol<\/dd>\n<dt><code>3<\/code><\/dt>\n<dd>sign immediately precedes currency symbol<\/dd>\n<dt><code>4<\/code><\/dt>\n<dd>sign immediately follows currency symbol<\/dd>\n<\/dl>\n<\/dd>\n<dt><code>char p_cs_precedes;<\/code><\/dt>\n<dd>whether currency symbol precedes (<code>1<\/code>) or follows (<code>0<\/code>) positive monetary values<\/dd>\n<dt><code>char p_sep_by_space;<\/code><\/dt>\n<dd>whether currency symbol is (<code>1<\/code>) or is not (<code>0<\/code>) separated by space from non-negative monetary values<\/dd>\n<dt><code>char p_sign_posn;<\/code><\/dt>\n<dd>format for non-negative monetary values, with values as for&nbsp;<code>n_sign_posn<\/code><\/dd>\n<\/dl>\n<p>Implementations may change field order and include additional fields.&nbsp;<em>Standard C Library<\/em>&nbsp;functions use only&nbsp;<code>decimal_point<\/code>.<\/dd>\n<dt><code>struct lconv* localeconv(void);<\/code><\/dt>\n<dd>returns pointer to formatting information for current locale<\/dd>\n<dt><code>char* setlocale(int&nbsp;<var>category<\/var>, const char* locale);<\/code><\/dt>\n<dd>Sets components of locale according to specified&nbsp;<code><var>category<\/var><\/code>&nbsp;and&nbsp;<code><var>locale<\/var><\/code>. Returns string describing new locale or null on error. (Implementations are permitted to define values of&nbsp;<code><var>category<\/var><\/code>&nbsp;additional to those describe here.)<\/dd>\n<dt><code>LC_ALL<\/code><\/dt>\n<dd><code><var>category<\/var><\/code>&nbsp;argument for all categories<\/dd>\n<dt><code>LC_NUMERIC<\/code><\/dt>\n<dd><code><var>category<\/var><\/code>&nbsp;for numeric formatting information<\/dd>\n<dt><code>LC_MONETARY<\/code><\/dt>\n<\/dl>\n<dl>\n<dd><code><var>category<\/var><\/code>&nbsp;for monetary formatting information<\/dd>\n<dt><code>LC_COLLATE<\/code><\/dt>\n<dd><code><var>category<\/var><\/code>&nbsp;for information affecting collating functions<\/dd>\n<dt><code>LC_CTYPE<\/code><\/dt>\n<dd><code><var>category<\/var><\/code>&nbsp;for information affecting&nbsp;character class tests&nbsp;functions<\/dd>\n<dt><code>LC_TIME<\/code><\/dt>\n<dd><code><var>category<\/var><\/code>&nbsp;for information affecting time conversions functions<\/dd>\n<dt><code>NULL<\/code><\/dt>\n<dd>null pointer constant<\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;math.h&gt;<\/h2>\n<p>On domain error, implementation-defined value returned and&nbsp;<code>errno<\/code>&nbsp;set to&nbsp;<code>EDOM<\/code>. On range error,&nbsp;<code>errno<\/code>&nbsp;set to&nbsp;<code>ERANGE<\/code>&nbsp;and return value is&nbsp;<code>HUGE_VAL<\/code>&nbsp;with correct sign for overflow, or zero for underflow. Angles are in radians.<\/p>\n<dl>\n<dt><code>HUGE_VAL<\/code><\/dt>\n<dd>magnitude returned (with correct sign) on overflow error<\/dd>\n<dt><code>double exp(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>exponential of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double log(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>natural logarithm of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double log10(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>base-10 logarithm of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double pow(double&nbsp;<var>x<\/var>, double&nbsp;<var>y<\/var>);<\/code><\/dt>\n<dd><code><var>x<\/var><\/code>&nbsp;raised to power&nbsp;<code><var>y<\/var><\/code><\/dd>\n<dt><code>double sqrt(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>square root of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double ceil(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>smallest integer not less than&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double floor(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>largest integer not greater than&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double fabs(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>absolute value of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double ldexp(double&nbsp;<var>x<\/var>, int&nbsp;<var>n<\/var>);<\/code><\/dt>\n<dd><code><var>x<\/var><\/code>&nbsp;times 2 to the power&nbsp;<code><var>n<\/var><\/code><\/dd>\n<dt><code>double frexp(double&nbsp;<var>x<\/var>, int*&nbsp;<var>exp<\/var>);<\/code><\/dt>\n<dd>if&nbsp;<code><var>x<\/var><\/code>&nbsp;non-zero, returns value, with absolute value in interval [1\/2, 1), and assigns to&nbsp;<code>*<var>exp<\/var><\/code>&nbsp;integer such that product of return value and 2 raised to the power&nbsp;<code>*<var>exp<\/var><\/code>&nbsp;equals&nbsp;<code><var>x<\/var><\/code>; if&nbsp;<code><var>x<\/var><\/code>&nbsp;zero, both return value and&nbsp;<code>*<var>exp<\/var><\/code>&nbsp;are zero<\/dd>\n<dt><code>double modf(double&nbsp;<var>x<\/var>, double*&nbsp;<var>ip<\/var>);<\/code><\/dt>\n<dd>returns fractional part and assigns to&nbsp;<code>*<var>ip<\/var><\/code>&nbsp;integral part of&nbsp;<code><var>x<\/var><\/code>, both with same sign as&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double fmod(double&nbsp;<var>x<\/var>, double&nbsp;<var>y<\/var>);<\/code><\/dt>\n<dd>if&nbsp;<code><var>y<\/var><\/code>&nbsp;non-zero, floating-point remainder of&nbsp;<code><var>x<\/var>\/<var>y<\/var><\/code>, with same sign as&nbsp;<code><var>x<\/var><\/code>; if&nbsp;<code><var>y<\/var><\/code>&nbsp;zero, result is implementation-defined<\/dd>\n<dt><code>double sin(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>sine of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double cos(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>cosine of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double tan(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>tangent of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double asin(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>arc-sine of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double acos(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>arc-cosine of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double atan(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>arc-tangent of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double atan2(double&nbsp;<var>y<\/var>, double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>arc-tangent of&nbsp;<code><var>y<\/var>\/<var>x<\/var><\/code><\/dd>\n<dt><code>double sinh(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>hyperbolic sine of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double cosh(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>hyperbolic cosine of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<dt><code>double tanh(double&nbsp;<var>x<\/var>);<\/code><\/dt>\n<dd>hyperbolic tangent of&nbsp;<code><var>x<\/var><\/code><\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;setjmp.h&gt;<\/h2>\n<dl>\n<dt><code>jmp_buf<\/code><\/dt>\n<dd>type of object holding context information<\/dd>\n<dt><code>int setjmp(jmp_buf&nbsp;<var>env<\/var>);<\/code><\/dt>\n<dd>Saves context information in&nbsp;<code><var>env<\/var><\/code>&nbsp;and returns zero. Subsequent call to&nbsp;<code>longjmp<\/code>&nbsp;with same&nbsp;<var>env<\/var>&nbsp;returns non-zero.<\/dd>\n<dt><code>void longjmp(jmp_buf&nbsp;<var>env<\/var>, int&nbsp;<var>val<\/var>);<\/code><\/dt>\n<dd>Restores context saved by most recent call to&nbsp;<code>setjmp<\/code>&nbsp;with specified&nbsp;<code><var>env<\/var><\/code>. Execution resumes as a second return from&nbsp;<code>setjmp<\/code>, with returned value&nbsp;<code><var>val<\/var><\/code>&nbsp;if specified value non-zero, or 1 otherwise.<\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;signal.h&gt;<\/h2>\n<dl>\n<dt><code>SIGABRT<\/code><\/dt>\n<dd>abnormal termination<\/dd>\n<dt><code>SIGFPE<\/code><\/dt>\n<dd>arithmetic error<\/dd>\n<dt><code>SIGILL<\/code><\/dt>\n<dd>invalid execution<\/dd>\n<dt><code>SIGINT<\/code><\/dt>\n<dd>(asynchronous) interactive attention<\/dd>\n<dt><code>SIGSEGV<\/code><\/dt>\n<dd>illegal storage access<\/dd>\n<dt><code>SIGTERM<\/code><\/dt>\n<dd>(asynchronous) termination request<\/dd>\n<dt><code>SIG_DFL<\/code><\/dt>\n<dd>specifies default signal handling<\/dd>\n<dt><code>SIG_ERR<\/code><\/dt>\n<dd><code>signal<\/code>&nbsp;return value indicating error<\/dd>\n<dt><code>SIG_IGN<\/code><\/dt>\n<dd>specifies that signal should be ignored<\/dd>\n<dt><code>void (*signal(int&nbsp;<var>sig<\/var>, void (*<var>handler<\/var>)(int)))(int);<\/code><\/dt>\n<dd>Install handler for subsequent signal&nbsp;<var>sig<\/var>. If&nbsp;<code><var>handler<\/var><\/code>&nbsp;is&nbsp;<code>SIG_DFL<\/code>, implementation-defined default behaviour will be used; if&nbsp;<code>SIG_IGN<\/code>, signal will be ignored; otherwise function pointed to by&nbsp;<code><var>handler<\/var><\/code>&nbsp;will be invoked with argument&nbsp;<var>sig<\/var>. In the last case, handling is&nbsp;<strong>restored to default behaviour<\/strong>&nbsp;before&nbsp;<code><var>handler<\/var><\/code>&nbsp;is called. If&nbsp;<code><var>handler<\/var><\/code>&nbsp;returns, execution resumes where signal occurred.&nbsp;<code>signal<\/code>&nbsp;returns the previous handler or&nbsp;<code>SIG_ERR<\/code>&nbsp;on error. Initial state is implementation-defined. Implementations may may define signals additional to those listed here.<\/dd>\n<dt><code>int raise(int&nbsp;<var>sig<\/var>);<\/code><\/dt>\n<dd>Sends signal&nbsp;<code><var>sig<\/var><\/code>. Returns zero on success.<\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;stdarg.h&gt;<\/h2>\n<dl>\n<dt><code>va_list<\/code><\/dt>\n<dd>type of object holding context information<\/dd>\n<dt><code>void&nbsp;va_start(va_list&nbsp;<var>ap<\/var>,&nbsp;<var>lastarg<\/var>);<\/code><\/dt>\n<dd>Initialisation macro which must be called once before any unnamed argument is accessed. Stores context information in&nbsp;<code><var>ap<\/var><\/code>.&nbsp;<code><var>lastarg<\/var><\/code>&nbsp;is the last named parameter of the function.<\/dd>\n<dt><code><var>type<\/var>&nbsp;va_arg(va_list&nbsp;<var>ap<\/var>,&nbsp;<var>type<\/var>);<\/code><\/dt>\n<dd>Yields value of the type (<code><var>type<\/var><\/code>) and value of the next unnamed argument.<\/dd>\n<dt><code>void&nbsp;va_end(va_list&nbsp;<var>ap<\/var>);<\/code><\/dt>\n<dd>Termination macro which must be called once after argument processing and before exit from function.<\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;stddef.h&gt;<\/h2>\n<dl>\n<dt><code>NULL<\/code><\/dt>\n<dd>Null pointer constant.<\/dd>\n<dt><code>offsetof(<var>stype<\/var>,&nbsp;<var>m<\/var>)<\/code><\/dt>\n<dd>Offset (in bytes) of member&nbsp;<code><var>m<\/var><\/code>&nbsp;from start of structure type&nbsp;<code><var>stype<\/var><\/code>.<\/dd>\n<dt><code>ptrdiff_t<\/code><\/dt>\n<dd>Type for objects declared to store result of subtracting pointers.<\/dd>\n<dt><code>size_t<\/code><\/dt>\n<dd>Type for objects declared to store result of&nbsp;<code>sizeof<\/code>&nbsp;operator.<\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;stdio.h&gt;<\/h2>\n<dl>\n<dt><code>BUFSIZ<\/code><\/dt>\n<dd>Size of buffer used by&nbsp;<code>setbuf<\/code>.<\/dd>\n<dt><code>EOF<\/code><\/dt>\n<dd>Value used to indicate end-of-stream or to report an error.<\/dd>\n<dt><code>FILENAME_MAX<\/code><\/dt>\n<dd>Maximum length required for array of characters to hold a filename.<\/dd>\n<dt><code>FOPEN_MAX<\/code><\/dt>\n<dd>Maximum number of files which may be open simultaneously.<\/dd>\n<dt><code>L_tmpnam<\/code><\/dt>\n<dd>Number of characters required for temporary filename generated by&nbsp;<code>tmpnam<\/code>.<\/dd>\n<dt><code>NULL<\/code><\/dt>\n<dd>Null pointer constant.<\/dd>\n<dt><code>SEEK_CUR<\/code><\/dt>\n<dd>Value for&nbsp;<code><var>origin<\/var><\/code>&nbsp;argument to&nbsp;<code>fseek<\/code>&nbsp;specifying current file position.<\/dd>\n<dt><code>SEEK_END<\/code><\/dt>\n<dd>Value for&nbsp;<code><var>origin<\/var><\/code>&nbsp;argument to&nbsp;<code>fseek<\/code>&nbsp;specifying end of file.<\/dd>\n<dt><code>SEEK_SET<\/code><\/dt>\n<dd>Value for&nbsp;<code><var>origin<\/var><\/code>&nbsp;argument to&nbsp;<code>fseek<\/code>&nbsp;specifying beginning of file.<\/dd>\n<dt><code>TMP_MAX<\/code><\/dt>\n<dd>Minimum number of unique filenames generated by calls to&nbsp;<code>tmpnam<\/code>.<\/dd>\n<dt><code>_IOFBF<\/code><\/dt>\n<dd>Value for&nbsp;<code><var>mode<\/var><\/code>&nbsp;argument to&nbsp;<code>setvbuf<\/code>&nbsp;specifying full buffering.<\/dd>\n<dt><code>_IOFBF<\/code><\/dt>\n<dd>Value for&nbsp;<code><var>mode<\/var><\/code>&nbsp;argument to&nbsp;<code>setvbuf<\/code>&nbsp;specifying line buffering.<\/dd>\n<dt><code>_IOFBF<\/code><\/dt>\n<dd>Value for&nbsp;<code><var>mode<\/var><\/code>&nbsp;argument to&nbsp;<code>setvbuf<\/code>&nbsp;specifying no buffering.<\/dd>\n<dt><code>stdin<\/code><\/dt>\n<dd>File pointer for standard input stream. Automatically opened when program execution begins.<\/dd>\n<dt><code>stdout<\/code><\/dt>\n<dd>File pointer for standard output stream. Automatically opened when program execution begins.<\/dd>\n<dt><code>stderr<\/code><\/dt>\n<dd>File pointer for standard error stream. Automatically opened when program execution begins.<\/dd>\n<dt><code>FILE<\/code><\/dt>\n<dd>Type of object holding information necessary to control a stream.<\/dd>\n<dt><code>fpos_t<\/code><\/dt>\n<dd>Type for objects declared to store file position information.<\/dd>\n<dt><code>size_t<\/code><\/dt>\n<dd>Type for objects declared to store result of&nbsp;<code>sizeof<\/code>&nbsp;operator.<\/dd>\n<dt><code>FILE*&nbsp;fopen(const char*&nbsp;<var>filename<\/var>, const char*&nbsp;<var>mode<\/var>);<\/code><\/dt>\n<dd>Opens file named&nbsp;<code><var>filename<\/var><\/code>&nbsp;and returns a stream, or&nbsp;<code>NULL<\/code>&nbsp;on failure.&nbsp;<code><var>mode<\/var><\/code>&nbsp;may be one of the following for text files:<\/p>\n<dl>\n<dt><code>\"r\"<\/code><\/dt>\n<dd>text reading<\/dd>\n<dt><code>\"w\"<\/code><\/dt>\n<dd>text writing<\/dd>\n<dt><code>\"a\"<\/code><\/dt>\n<dd>text append<\/dd>\n<dt><code>\"r+\"<\/code><\/dt>\n<dd>text update (reading and writing)<\/dd>\n<dt><code>\"w+\"<\/code><\/dt>\n<dd>text update, discarding previous content (if any)<\/dd>\n<dt><code>\"a+\"<\/code><\/dt>\n<dd>text append, reading, and writing at end<\/dd>\n<\/dl>\n<p>or one of those strings with&nbsp;<code>b<\/code>&nbsp;included (after the first character), for binary files.<\/dd>\n<dt><code>FILE* freopen(const char*&nbsp;<var>filename<\/var>, const char*&nbsp;<var>mode<\/var>,&nbsp;FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Closes file associated with&nbsp;<code><var>stream<\/var><\/code>, then opens file&nbsp;<code><var>filename<\/var><\/code>&nbsp;with specified mode and associates it with&nbsp;<code><var>stream<\/var><\/code>. Returns&nbsp;<code><var>stream<\/var><\/code>&nbsp;or&nbsp;<code>NULL<\/code>&nbsp;on error.<\/dd>\n<dt><code>int&nbsp;fflush(FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Flushes stream&nbsp;<code><var>stream<\/var><\/code>&nbsp;and returns zero on success or&nbsp;EOF&nbsp;on error. Effect undefined for input stream.&nbsp;<code>fflush(NULL)<\/code>&nbsp;flushes all output streams.<\/dd>\n<dt><code>int&nbsp;fclose(FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Closes stream&nbsp;<var>stream<\/var>&nbsp;(after flushing, if output stream). Returns&nbsp;<code>EOF<\/code>&nbsp;on error, zero otherwise.<\/dd>\n<dt><code>int&nbsp;remove(const char*&nbsp;<var>filename<\/var>);<\/code><\/dt>\n<dd>Removes specified file. Returns non-zero on failure.<\/dd>\n<dt><code>int&nbsp;rename(const char*&nbsp;<var>oldname<\/var>, const char*&nbsp;<var>newname<\/var>);<\/code><\/dt>\n<dd>Changes name of file&nbsp;<code><var>oldname<\/var><\/code>&nbsp;to&nbsp;<code><var>newname<\/var><\/code>. Returns non-zero on failure.<\/dd>\n<dt><code>FILE*&nbsp;tmpfile();<\/code><\/dt>\n<dd>Creates temporary file (mode&nbsp;<code>\"wb+\"<\/code>) which will be removed when closed or on normal program termination. Returns stream or&nbsp;<code>NULL<\/code>&nbsp;on failure.<\/dd>\n<dt><code>char*&nbsp;tmpname(char&nbsp;<var>s<\/var>[L_tmpnam]);<\/code><\/dt>\n<dd>Assigns to&nbsp;<code><var>s<\/var><\/code>&nbsp;(if&nbsp;<code><var>s<\/var><\/code>&nbsp;non-null) and returns unique name for a temporary file. Unique name is returned for each of the first&nbsp;<code>TMP_MAX<\/code>&nbsp;invocations.<\/dd>\n<dt><code>int&nbsp;setvbuf(FILE*&nbsp;<var>stream<\/var>, char*&nbsp;<var>buf<\/var>, int&nbsp;<var>mode<\/var>,&nbsp;size_t&nbsp;<var>size<\/var>);<\/code><\/dt>\n<dd>Controls buffering for stream&nbsp;<code><var>stream<\/var><\/code>.&nbsp;<code><var>mode<\/var><\/code>&nbsp;is&nbsp;<code>_IOFBF<\/code>&nbsp;for full buffering,&nbsp;<code>_IOLBF<\/code>&nbsp;for line buffering,&nbsp;<code>_IONBF<\/code>&nbsp;for no buffering. Non-null&nbsp;<code><var>buf<\/var><\/code>&nbsp;specifies buffer of size&nbsp;<code><var>size<\/var><\/code>&nbsp;to be used; otherwise, a buffer is allocated. Returns non-zero on error. Call must be before any other operation on stream.<\/dd>\n<dt><code>void&nbsp;setbuf(FILE*&nbsp;<var>stream<\/var>, char*&nbsp;<var>buf<\/var>);<\/code><\/dt>\n<dd>Controls buffering for stream&nbsp;<var>stream<\/var>. For null&nbsp;<code><var>buf<\/var><\/code>, turns off buffering, otherwise equivalent to&nbsp;<code>(void)setvbuf(<var>stream<\/var>,&nbsp;<var>buf<\/var>,&nbsp;_IOFBF,&nbsp;BUFSIZ)<\/code>.<\/dd>\n<dt><code>int&nbsp;fprintf(FILE*&nbsp;<var>stream<\/var>, const char*&nbsp;<var>format<\/var>, ...);<\/code><\/dt>\n<dd>Converts (according to format&nbsp;<code><var>format<\/var><\/code>) and writes output to stream&nbsp;<code><var>stream<\/var><\/code>. Number of characters written, or negative value on error, is returned. Conversion specifications consist of:<\/p>\n<ul>\n<li><code>%<\/code><\/li>\n<li>(optional) flag:\n<dl>\n<dt><code>-<\/code><\/dt>\n<dd>left adjust<\/dd>\n<dt><code>+<\/code><\/dt>\n<dd>always sign<\/dd>\n<dt><em>space<\/em><\/dt>\n<dd>space if no sign<\/dd>\n<dt><code>0<\/code><\/dt>\n<dd>zero pad<\/dd>\n<dt><code>#<\/code><\/dt>\n<dd>Alternate form: for conversion character&nbsp;<code>o<\/code>, first digit will be zero, for [<code>xX<\/code>], prefix&nbsp;<code>0x<\/code>&nbsp;or&nbsp;<code>0X<\/code>&nbsp;to non-zero value, for [<code>eEfgG<\/code>], always decimal point, for [<code>gG<\/code>] trailing zeros not removed.<\/dd>\n<\/dl>\n<\/li>\n<li>(optional) minimum width: if specified as&nbsp;<code>*<\/code>, value taken from next argument (which must be&nbsp;<code>int<\/code>).<\/li>\n<li>(optional)&nbsp;<code>.<\/code>&nbsp;(separating width from precision):<\/li>\n<li>(optional) precision: for conversion character&nbsp;<code>s<\/code>, maximum characters to be printed from the string, for [<code>eEf<\/code>], digits after decimal point, for [<code>gG<\/code>], significant digits, for an integer, minimum number of digits to be printed. If specified as&nbsp;<code>*<\/code>, value taken from next argument (which must be&nbsp;<code>int<\/code>).<\/li>\n<li>(optional) length modifier:\n<dl>\n<dt><code>h<\/code><\/dt>\n<dd><code>short<\/code>&nbsp;or&nbsp;<code>unsigned short<\/code><\/dd>\n<dt><code>l<\/code><\/dt>\n<dd><code>long<\/code>&nbsp;or&nbsp;<code>unsigned long<\/code><\/dd>\n<dt><code>L<\/code><\/dt>\n<dd><code>long double<\/code><\/dd>\n<\/dl>\n<\/li>\n<li>conversion character:\n<dl>\n<dt><code>d,i<\/code><\/dt>\n<dd><code>int<\/code>&nbsp;argument, printed in signed decimal notation<\/dd>\n<dt><code>o<\/code><\/dt>\n<dd><code>int<\/code>&nbsp;argument, printed in unsigned octal notation<\/dd>\n<dt><code>x,X<\/code><\/dt>\n<dd><code>int<\/code>&nbsp;argument, printed in unsigned hexadecimal notation<\/dd>\n<dt><code>u<\/code><\/dt>\n<dd><code>int<\/code>&nbsp;argument, printed in unsigned decimal notation<\/dd>\n<dt><code>c<\/code><\/dt>\n<dd><code>int<\/code>&nbsp;argument, printed as single character<\/dd>\n<dt><code>s<\/code><\/dt>\n<dd><code>char*<\/code>&nbsp;argument<\/dd>\n<dt><code>f<\/code><\/dt>\n<dd><code>double<\/code>&nbsp;argument, printed with format [<code>-<\/code>]<var>mmm<\/var><code>.<\/code><var>ddd<\/var><\/dd>\n<dt><code>e,E<\/code><\/dt>\n<dd><code>double<\/code>&nbsp;argument, printed with format [<code>-<\/code>]<var>m<\/var><code>.<\/code><var>dddddd<\/var>(<code>e<\/code>|<code>E<\/code>)(<code>+<\/code>|<code>-<\/code>)<var>xx<\/var><\/dd>\n<dt><code>g,G<\/code><\/dt>\n<dd><code>double<\/code>&nbsp;argument<\/dd>\n<dt><code>p<\/code><\/dt>\n<dd><code>void*<\/code>&nbsp;argument, printed as pointer<\/dd>\n<dt><code>n<\/code><\/dt>\n<dd><code>int*<\/code>&nbsp;argument : the number of characters written to this point is written&nbsp;<em>into<\/em>&nbsp;argument<\/dd>\n<dt><code>%<\/code><\/dt>\n<dd>no argument; prints %<\/dd>\n<\/dl>\n<\/li>\n<\/ul>\n<\/dd>\n<dt><code>int&nbsp;printf(const char*&nbsp;<var>format<\/var>, ...);<\/code><\/dt>\n<dd><code>printf(f, ...)<\/code>&nbsp;is equivalent to&nbsp;<code>fprintf(stdout, f, ...)<\/code><\/dd>\n<dt><code>int&nbsp;sprintf(char*&nbsp;<var>s<\/var>, const char*&nbsp;<var>format<\/var>, ...);<\/code><\/dt>\n<dd>Like&nbsp;fprintf, but output written into string&nbsp;<code><var>s<\/var><\/code>, which&nbsp;<strong>must be large enough to hold the output<\/strong>, rather than to a stream. Output is&nbsp;<code>NUL<\/code>-terminated. Returns length (excluding the terminating&nbsp;<code>NUL<\/code>).<\/dd>\n<dt><code>int&nbsp;vfprintf(FILE*&nbsp;<var>stream<\/var>, const char*&nbsp;<var>format<\/var>,&nbsp;va_list&nbsp;<var>arg<\/var>);<\/code><\/dt>\n<dd>Equivalent to&nbsp;<code>fprintf<\/code>&nbsp;with variable argument list replaced by&nbsp;<code><var>arg<\/var><\/code>, which must have been initialised by the&nbsp;<code>va_start<\/code>&nbsp;macro (and may have been used in calls to&nbsp;<code>va_arg<\/code>).<\/dd>\n<dt><code>int&nbsp;vprintf(const char*&nbsp;<var>format<\/var>,&nbsp;va_list&nbsp;<var>arg<\/var>);<\/code><\/dt>\n<dd>Equivalent to&nbsp;<code>printf<\/code>&nbsp;with variable argument list replaced by&nbsp;<code><var>arg<\/var><\/code>, which must have been initialised by the&nbsp;<code>va_start<\/code>&nbsp;macro (and may have been used in calls to&nbsp;<code>va_arg<\/code>).<\/dd>\n<dt><code>int vsprintf(char*&nbsp;<var>s<\/var>, const char*&nbsp;<var>format<\/var>,&nbsp;va_list&nbsp;<var>arg<\/var>);<\/code><\/dt>\n<dd>Equivalent to&nbsp;<code>sprintf<\/code>&nbsp;with variable argument list replaced by&nbsp;<code><var>arg<\/var><\/code>, which must have been initialised by the&nbsp;<code>va_start<\/code>&nbsp;macro (and may have been used in calls to&nbsp;<code>va_arg<\/code>).<\/dd>\n<dt><code>int&nbsp;fscanf(FILE*&nbsp;<var>stream<\/var>, const char*&nbsp;<var>format<\/var>, ...);<\/code><\/dt>\n<dd>Performs formatted input conversion, reading from stream&nbsp;<code><var>stream<\/var><\/code>&nbsp;according to format&nbsp;<code><var>format<\/var><\/code>. The function returns when&nbsp;<code><var>format<\/var><\/code>&nbsp;is fully processed. Returns number of items converted and assigned, or&nbsp;<code>EOF<\/code>&nbsp;if end-of-file or error occurs before any conversion. Each of the arguments following&nbsp;<code><var>format<\/var><\/code>&nbsp;<strong>must be a pointer<\/strong>. Format string may contain:<\/p>\n<ul>\n<li>blanks and tabs, which are ignored<\/li>\n<li>ordinary characters, which are expected to match next non-white-space of input<\/li>\n<li>conversion specifications, consisting of:\n<ul>\n<li><code>%<\/code><\/li>\n<li>(optional) assignment suppression character &#8222;<code>*<\/code>&#8222;<\/li>\n<li>(optional) maximum field width<\/li>\n<li>(optional) target width indicator:\n<dl>\n<dt><code>h<\/code><\/dt>\n<dd>argument is pointer to&nbsp;<code>short<\/code>&nbsp;rather than&nbsp;<code>int<\/code><\/dd>\n<dt><code>l<\/code><\/dt>\n<dd>argument is pointer to&nbsp;<code>long<\/code>&nbsp;rather than&nbsp;<code>int<\/code>, or&nbsp;<code>double<\/code>&nbsp;rather than&nbsp;<code>float<\/code><\/dd>\n<dt><code>L<\/code><\/dt>\n<dd>argument is pointer to&nbsp;<code>long double<\/code>&nbsp;rather than&nbsp;<code>float<\/code><\/dd>\n<\/dl>\n<\/li>\n<li>conversion character:\n<dl>\n<dt><code>d<\/code><\/dt>\n<dd>decimal integer;&nbsp;<code>int*<\/code>&nbsp;parameter required<\/dd>\n<dt><code>i<\/code><\/dt>\n<dd>integer;&nbsp;<code>int*<\/code>&nbsp;parameter required; decimal, octal or hex<\/dd>\n<dt><code>o<\/code><\/dt>\n<dd>octal integer;&nbsp;<code>int*<\/code>&nbsp;parameter required<\/dd>\n<dt><code>u<\/code><\/dt>\n<dd>unsigned decimal integer;&nbsp;<code>unsigned int*<\/code>&nbsp;parameter required<\/dd>\n<dt><code>x<\/code><\/dt>\n<dd>hexadecimal integer;&nbsp;<code>int*<\/code>&nbsp;parameter required<\/dd>\n<dt><code>c<\/code><\/dt>\n<dd>characters;&nbsp;<code>char*<\/code>&nbsp;parameter required; white-space is not skipped, and&nbsp;<code>NUL<\/code>-termination is not performed<\/dd>\n<dt><code>s<\/code><\/dt>\n<dd>string of non-white-space;&nbsp;<code>char*<\/code>&nbsp;parameter required; string is&nbsp;<code>NUL<\/code>-terminated<\/dd>\n<dt><code>e,f,g<\/code><\/dt>\n<dd>floating-point number;&nbsp;<code>float*<\/code>&nbsp;parameter required<\/dd>\n<dt><code>p<\/code><\/dt>\n<dd>pointer value;&nbsp;<code>void*<\/code>&nbsp;parameter required<\/dd>\n<dt><code>n<\/code><\/dt>\n<dd>chars read so far;&nbsp;<code>int*<\/code>&nbsp;parameter required<\/dd>\n<dt><code>[<var>...<\/var>]<\/code><\/dt>\n<dd>longest non-empty string from specified set;&nbsp;<code>char*<\/code>&nbsp;parameter required; string is&nbsp;<code>NUL<\/code>-terminated<\/dd>\n<dt><code>[^<var>...<\/var>]<\/code><\/dt>\n<dd>longest non-empty string not from specified set;&nbsp;<code>char*<\/code>&nbsp;parameter required; string is&nbsp;<code>NUL<\/code>-terminated<\/dd>\n<dt><code>%<\/code><\/dt>\n<dd>literal&nbsp;<code>%<\/code>; no assignment<\/dd>\n<\/dl>\n<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/dd>\n<dt><code>int&nbsp;scanf(const char*&nbsp;<var>format<\/var>, ...);<\/code><\/dt>\n<dd><code>scanf(f, ...)<\/code>&nbsp;is equivalent to&nbsp;<code>fscanf(stdin, f, ...)<\/code><\/dd>\n<dt><code>int sscanf(char*&nbsp;<var>s<\/var>, const char*&nbsp;<var>format<\/var>, ...);<\/code><\/dt>\n<dd>Like&nbsp;<code>fscanf<\/code>, but input read from string&nbsp;<code><var>s<\/var><\/code>.<\/dd>\n<dt><code>int&nbsp;fgetc(FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Returns next character from (input) stream&nbsp;<code><var>stream<\/var><\/code>, or&nbsp;<code>EOF<\/code>&nbsp;on end-of-file or error.<\/dd>\n<dt><code>char*&nbsp;fgets(char*&nbsp;<var>s<\/var>, int&nbsp;<var>n<\/var>,&nbsp;FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Copies characters from (input) stream&nbsp;<code><var>stream<\/var><\/code>&nbsp;to&nbsp;<code><var>s<\/var><\/code>, stopping when&nbsp;<code><var>n<\/var><\/code>-1 characters copied, newline copied, end-of-file reached or error occurs. If no error,&nbsp;<code><var>s<\/var><\/code>&nbsp;is&nbsp;<code>NUL<\/code>-terminated. Returns&nbsp;<code>NULL<\/code>&nbsp;on end-of-file or error,&nbsp;<code><var>s<\/var><\/code>&nbsp;otherwise.<\/dd>\n<dt>int&nbsp;<code>fputc(int&nbsp;<var>c<\/var>,&nbsp;FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Writes&nbsp;<code><var>c<\/var><\/code>, to stream&nbsp;<code><var>stream<\/var><\/code>. Returns&nbsp;<code><var>c<\/var><\/code>, or&nbsp;<code>EOF<\/code>&nbsp;on error.<\/dd>\n<dt><code>char*&nbsp;fputs(const char*&nbsp;<var>s<\/var>,&nbsp;FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Writes&nbsp;<code><var>s<\/var><\/code>, to (output) stream stream. Returns non-negative on success or&nbsp;<code>EOF<\/code>&nbsp;on error.<\/dd>\n<dt><code>int&nbsp;getc(FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Equivalent to&nbsp;<code>fgetc<\/code>&nbsp;except that it may be a macro.<\/dd>\n<dt><code>int&nbsp;getchar(void);<\/code><\/dt>\n<dd>Equivalent to&nbsp;<code>getc(stdin)<\/code>.<\/dd>\n<dt><code>char*&nbsp;gets(char*&nbsp;<var>s<\/var>);<\/code><\/dt>\n<dd>Copies characters from&nbsp;<code>stdin<\/code>&nbsp;into&nbsp;<code><var>s<\/var><\/code>&nbsp;until newline encountered, end-of-file reached, or error occurs. Does not copy newline.&nbsp;<code>NUL<\/code>-terminates&nbsp;<code><var>s<\/var><\/code>. Returns&nbsp;<code><var>s<\/var><\/code>, or&nbsp;<code>NULL<\/code>&nbsp;on end-of-file or error.&nbsp;<strong>Should not be used because of the potential for buffer overflow.<\/strong><\/dd>\n<dt><code>int&nbsp;putc(int&nbsp;<var>c<\/var>,&nbsp;FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Equivalent to&nbsp;<code>fputc<\/code>&nbsp;except that it may be a macro.<\/dd>\n<dt><code>int&nbsp;putchar(int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd><code>putchar(<var>c<\/var>)<\/code>&nbsp;is equivalent to&nbsp;<code>putc(<var>c<\/var>,&nbsp;stdout)<\/code>.<\/dd>\n<dt><code>int&nbsp;puts(const char*&nbsp;<var>s<\/var>);<\/code><\/dt>\n<dd>Writes&nbsp;<code><var>s<\/var><\/code>&nbsp;(excluding terminating&nbsp;<code>NUL<\/code>) and a newline to&nbsp;<code>stdout<\/code>. Returns non-negative on success,&nbsp;<code>EOF<\/code>&nbsp;on error.<\/dd>\n<dt><code>int&nbsp;ungetc(int&nbsp;<var>c<\/var>,&nbsp;FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Pushes&nbsp;<code><var>c<\/var><\/code>&nbsp;(which must not be&nbsp;<code>EOF<\/code>), onto (input) stream&nbsp;<code><var>stream<\/var><\/code>&nbsp;such that it will be returned by the next read. Only one character of pushback is guaranteed (for each stream). Returns&nbsp;<code><var>c<\/var><\/code>, or&nbsp;<code>EOF<\/code>&nbsp;on error.<\/dd>\n<dt><code>size_t&nbsp;fread(void*&nbsp;<var>ptr<\/var>,&nbsp;size_t&nbsp;<var>size<\/var>,&nbsp;size_t&nbsp;<var>nobj<\/var>,&nbsp;FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Reads (at most)&nbsp;<code><var>nobj<\/var><\/code>&nbsp;objects of size&nbsp;<code><var>size<\/var><\/code>&nbsp;from stream&nbsp;<code><var>stream<\/var><\/code>&nbsp;into&nbsp;<code><var>ptr<\/var><\/code>&nbsp;and returns number of objects read. (<code>feof<\/code>&nbsp;and&nbsp;<code>ferror<\/code>&nbsp;can be used to check status.)<\/dd>\n<dt><code>size_t&nbsp;fwrite(const void*&nbsp;<var>ptr<\/var>,&nbsp;size_t&nbsp;<var>size<\/var>,&nbsp;size_t&nbsp;<var>nobj<\/var>,&nbsp;FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Writes to stream&nbsp;<code><var>stream<\/var><\/code>,&nbsp;<code><var>nobj<\/var><\/code>&nbsp;objects of size&nbsp;<code><var>size<\/var><\/code>&nbsp;from array&nbsp;<code><var>ptr<\/var><\/code>. Returns number of objects written.<\/dd>\n<dt><code>int&nbsp;fseek(FILE*&nbsp;<var>stream<\/var>, long&nbsp;<var>offset<\/var>, int&nbsp;<var>origin<\/var>);<\/code><\/dt>\n<dd>Sets file position for stream&nbsp;<code><var>stream<\/var><\/code>&nbsp;and clears end-of-file indicator. For a binary stream, file position is set to&nbsp;<code><var>offset<\/var><\/code>&nbsp;bytes from the position indicated by&nbsp;<code><var>origin<\/var><\/code>: beginning of file for&nbsp;<code>SEEK_SET<\/code>, current position for&nbsp;<code>SEEK_CUR<\/code>, or end of file for&nbsp;<code>SEEK_END<\/code>. Behaviour is similar for a text stream, but&nbsp;<code><var>offset<\/var><\/code>&nbsp;must be zero or, for&nbsp;<code>SEEK_SET<\/code>&nbsp;only, a value returned by&nbsp;<code>ftell<\/code>. Returns non-zero on error.<\/dd>\n<dt><code>long&nbsp;ftell(FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Returns current file position for stream&nbsp;<code><var>stream<\/var><\/code>, or&nbsp;<code>-1<\/code>&nbsp;on error.<\/dd>\n<dt><code>void&nbsp;rewind(FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Equivalent to&nbsp;<code>fseek(<var>stream<\/var>, 0L, SEEK_SET);&nbsp;clearerr(<var>stream<\/var>)<\/code>.<\/dd>\n<dt><code>int&nbsp;fgetpos(FILE*&nbsp;<var>stream<\/var>,&nbsp;fpos_t*&nbsp;<var>ptr<\/var>);<\/code><\/dt>\n<dd>Stores current file position for stream&nbsp;<code><var>stream<\/var><\/code>&nbsp;in&nbsp;<code>*<var>ptr<\/var><\/code>. Returns non-zero on error.<\/dd>\n<dt><code>int&nbsp;fsetpos(FILE*&nbsp;<var>stream<\/var>, const&nbsp;fpos_t*&nbsp;<var>ptr<\/var>);<\/code><\/dt>\n<dd>Sets current position of stream&nbsp;<var>stream<\/var>&nbsp;to&nbsp;<code>*<var>ptr<\/var><\/code>. Returns non-zero on error.<\/dd>\n<dt><code>void&nbsp;clearerr(FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Clears end-of-file and error indicators for stream&nbsp;<code><var>stream<\/var><\/code>.<\/dd>\n<dt><code>int&nbsp;feof(FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Returns non-zero if end-of-file indicator is set for stream&nbsp;<code><var>stream<\/var><\/code>.<\/dd>\n<dt><code>int&nbsp;ferror(FILE*&nbsp;<var>stream<\/var>);<\/code><\/dt>\n<dd>Returns non-zero if error indicator is set for stream&nbsp;<code><var>stream<\/var><\/code>.<\/dd>\n<dt><code>void&nbsp;perror(const char*&nbsp;<var>s<\/var>);<\/code><\/dt>\n<dd>Prints&nbsp;<code><var>s<\/var><\/code>&nbsp;(if non-null) and&nbsp;<code>strerror(errno)<\/code>&nbsp;to standard error as would:<\/p>\n<pre>fprintf(stderr, \"%s: %s\\n\", (<var>s<\/var> != NULL ? <var>s<\/var> : \"\"), strerror(errno))<\/pre>\n<\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;stdlib.h&gt;<\/h2>\n<dl>\n<dt><code>EXIT_FAILURE<\/code><\/dt>\n<dd>Value for&nbsp;<code><var>status<\/var><\/code>&nbsp;argument to&nbsp;<code>exit<\/code>&nbsp;indicating failure.<\/dd>\n<dt><code>EXIT_SUCCESS<\/code><\/dt>\n<dd>Value for&nbsp;<code><var>status<\/var><\/code>&nbsp;argument to&nbsp;<code>exit<\/code>&nbsp;indicating success.<\/dd>\n<dt><code>RAND_MAX<\/code><\/dt>\n<dd>Maximum value returned by&nbsp;<code>rand()<\/code>.<\/dd>\n<dt><code>NULL<\/code><\/dt>\n<dd>Null pointer constant.<\/dd>\n<dt><code>div_t<\/code><\/dt>\n<dd>Return type of&nbsp;<code>div()<\/code>. Structure having members:<\/p>\n<dl>\n<dt><code>int quot;<\/code><\/dt>\n<dd>quotient<\/dd>\n<dt><code>int rem;<\/code><\/dt>\n<dd>remainder<\/dd>\n<\/dl>\n<\/dd>\n<dt><code>ldiv_t<\/code><\/dt>\n<dd>Return type of&nbsp;<code>ldiv()<\/code>. Structure having members:<\/p>\n<dl>\n<dt><code>long quot;<\/code><\/dt>\n<dd>quotient<\/dd>\n<dt><code>long rem;<\/code><\/dt>\n<dd>remainder<\/dd>\n<\/dl>\n<\/dd>\n<dt><code>size_t<\/code><\/dt>\n<dd>Type for objects declared to store result of&nbsp;<code>sizeof<\/code>&nbsp;operator.<\/dd>\n<dt><code>int abs(int&nbsp;<var>n<\/var>);<\/code><\/dt>\n<dt><code>long labs(long&nbsp;<var>n<\/var>);<\/code><\/dt>\n<dd>Returns absolute value of&nbsp;<code><var>n<\/var><\/code>.<\/dd>\n<dt><code>div_t&nbsp;div(int&nbsp;<var>num<\/var>, int&nbsp;<var>denom<\/var>);<\/code><\/dt>\n<dt><code>ldiv_t&nbsp;ldiv(long&nbsp;<var>num<\/var>, long&nbsp;<var>denom<\/var>);<\/code><\/dt>\n<dd>Returns quotient and remainder of&nbsp;<code><var>num<\/var>\/<var>denom<\/var><\/code>.<\/dd>\n<dt><code>double atof(const char*&nbsp;<var>s<\/var>);<\/code><\/dt>\n<dd>Equivalent to&nbsp;<code>strtod(<var>s<\/var>, (char**)NULL)<\/code>&nbsp;except that&nbsp;<code>errno<\/code>&nbsp;is not necessarily set on conversion error.<\/dd>\n<dt><code>int atoi(const char*&nbsp;<var>s<\/var>);<\/code><\/dt>\n<dd>Equivalent to&nbsp;<code>(int)strtol(<var>s<\/var>, (char**)NULL, 10)<\/code>&nbsp;except that&nbsp;<code>errno<\/code>&nbsp;is not necessarily set on conversion error.<\/dd>\n<dt><code>long atol(const char*&nbsp;<var>s<\/var>);<\/code><\/dt>\n<dd>Equivalent to&nbsp;<code>strtol(<var>s<\/var>, (char**)NULL, 10)<\/code>&nbsp;except that&nbsp;<code>errno<\/code>&nbsp;is not necessarily set on conversion error.<\/dd>\n<dt><code>double&nbsp;strtod(const char*&nbsp;<var>s<\/var>, char**&nbsp;<var>endp<\/var>);<\/code><\/dt>\n<dd>Converts initial characters (ignoring leading white space) of&nbsp;<code><var>s<\/var><\/code>&nbsp;to type&nbsp;<code>double<\/code>. If&nbsp;<code><var>endp<\/var><\/code>&nbsp;non-null, stores pointer to unconverted suffix in&nbsp;<code>*<var>endp<\/var><\/code>. On overflow, sets&nbsp;<code>errno<\/code>&nbsp;to&nbsp;<code>ERANGE<\/code>&nbsp;and returns&nbsp;<code>HUGE_VAL<\/code>&nbsp;with the appropriate sign; on underflow, sets&nbsp;<code>errno<\/code>&nbsp;to&nbsp;<code>ERANGE<\/code>&nbsp;and returns zero; otherwise returns converted value.<\/dd>\n<dt><code>long&nbsp;strtol(const char*&nbsp;<var>s<\/var>, char**&nbsp;<var>endp<\/var>, int&nbsp;<var>base<\/var>);<\/code><\/dt>\n<dd>Converts initial characters (ignoring leading white space) of&nbsp;<code><var>s<\/var><\/code>&nbsp;to type&nbsp;<code>long<\/code>. If&nbsp;<code><var>endp<\/var><\/code>&nbsp;non-nu ll, stores pointer to unconverted suffix in&nbsp;<code>*<var>endp<\/var><\/code>. If&nbsp;<code><var>base<\/var><\/code>&nbsp;between 2 and 36, that base used for conversion; if zero, leading (after any sign)&nbsp;<code>0X<\/code>&nbsp;or&nbsp;<code>0x<\/code>&nbsp;implies hexadecimal, leading&nbsp;<code>0<\/code>&nbsp;(after any sign) implies octal, otherwise decimal assumed. Leading&nbsp;<code>0X<\/code>&nbsp;or&nbsp;<code>0x<\/code>&nbsp;permitted for base hexadecimal. On overflow, sets&nbsp;<code>errno<\/code>&nbsp;to&nbsp;<code>ERANGE<\/code>&nbsp;and returns&nbsp;<code>LONG_MAX<\/code>&nbsp;or&nbsp;<code>LONG_MIN<\/code>&nbsp;(as appropriate for sign); otherwise returns converted value.<\/dd>\n<dt><code>unsigned long&nbsp;strtoul(const char*&nbsp;<var>s<\/var>, char**&nbsp;<var>endp<\/var>, int&nbsp;<var>base<\/var>);<\/code><\/dt>\n<dd>As for&nbsp;<code>strtol<\/code>&nbsp;except result is&nbsp;<code>unsigned long<\/code>&nbsp;and value on overflow is&nbsp;<code>ULONG_MAX<\/code>.<\/dd>\n<dt><code>void* calloc(size_t&nbsp;<var>nobj<\/var>,&nbsp;size_t&nbsp;<var>size<\/var>);<\/code><\/dt>\n<dd>Returns pointer to&nbsp;<em>zero-initialised<\/em>&nbsp;newly-allocated space for an array of&nbsp;<code><var>nobj<\/var><\/code>&nbsp;objects each of size&nbsp;<code><var>size<\/var><\/code>, or&nbsp;<code>NULL<\/code>&nbsp;on error.<\/dd>\n<dt><code>void* malloc(size_t&nbsp;<var>size<\/var>);<\/code><\/dt>\n<dd>Returns pointer to&nbsp;<em>uninitialised<\/em>&nbsp;newly-allocated space for an object of size&nbsp;<var>size<\/var>, or&nbsp;<code>NULL<\/code>&nbsp;on error.<\/dd>\n<dt><code>void* realloc(void*&nbsp;<var>p<\/var>, size_t&nbsp;<var>size<\/var>);<\/code><\/dt>\n<dd>Returns pointer to newly-allocated space for an object of size&nbsp;<code><var>size<\/var><\/code>, initialised, to minimum of old and new sizes, to existing contents of&nbsp;<code><var>p<\/var><\/code>&nbsp;(if non-null), or&nbsp;<code>NULL<\/code>&nbsp;on error. On success, old object deallocated, otherwise unchanged.<\/dd>\n<dt><code>void free(void*&nbsp;<var>p<\/var>);<\/code><\/dt>\n<dd>If&nbsp;<code><var>p<\/var><\/code>&nbsp;non-null, deallocates space to which it points.<\/dd>\n<dt><code>void&nbsp;abort();<\/code><\/dt>\n<dd>Terminates program abnormally, by calling&nbsp;<code>raise(SIGABRT)<\/code>.<\/dd>\n<dt><code>void&nbsp;exit(int&nbsp;<var>status<\/var>);<\/code><\/dt>\n<dd>Terminates program normally. Functions installed using&nbsp;<code>atexit<\/code>&nbsp;are called (in reverse order to that in which installed), open files are flushed, open streams are closed and control is returned to environment.&nbsp;<code><var>status<\/var><\/code>&nbsp;is returned to environment in implementation-dependent manner. Zero or&nbsp;<code>EXIT_SUCCESS<\/code>&nbsp;indicates successful termination and&nbsp;<code>EXIT_FAILURE<\/code>&nbsp;indicates unsuccessful termination. Implementations may define other values.<\/dd>\n<dt><code>int&nbsp;atexit(void (*<var>fcm<\/var>)(void));<\/code><\/dt>\n<dd>Registers&nbsp;<code><var>fcn<\/var><\/code>&nbsp;to be called when program terminates normally (or when&nbsp;<code>main<\/code>&nbsp;returns). Returns non-zero on failure.<\/dd>\n<dt><code>int system(const char*&nbsp;<var>s<\/var>);<\/code><\/dt>\n<dd>If&nbsp;<code><var>s<\/var><\/code>&nbsp;is not&nbsp;<code>NULL<\/code>, passes&nbsp;<code><var>s<\/var><\/code>&nbsp;to environment for execution, and returns status reported by command processor; if&nbsp;<code><var>s<\/var><\/code>&nbsp;is&nbsp;<code>NULL<\/code>, non-zero returned if environment has a command processor.<\/dd>\n<dt><code>char* getenv(const char*&nbsp;<var>name<\/var>);<\/code><\/dt>\n<dd>Returns string associated with name&nbsp;<code><var>name<\/var><\/code>&nbsp;from implementation&#8217;s environment, or&nbsp;<code>NULL<\/code>&nbsp;if no such string exists.<\/dd>\n<dt><code>void* bsearch(const void*&nbsp;<var>key<\/var>, const void*&nbsp;<var>base<\/var>,&nbsp;size_t&nbsp;<var>n<\/var>,&nbsp;size_t&nbsp;<var>size<\/var>, int (*<var>cmp<\/var>)(const void* keyval, const void* datum));<\/code><\/dt>\n<dd>Searches ordered array&nbsp;<code><var>base<\/var><\/code>&nbsp;(of&nbsp;<code><var>n<\/var><\/code>&nbsp;objects each of size&nbsp;<code><var>size<\/var><\/code>) for item matching&nbsp;<code><var>key<\/var><\/code>&nbsp;according to comparison function&nbsp;<code><var>cmp<\/var><\/code>.&nbsp;<code><var>cmp<\/var><\/code>&nbsp;must return negative value if first argument is less than second, zero if equal and positive if greater. Items of&nbsp;<code><var>base<\/var><\/code>&nbsp;are assumed to be in ascending order (according to&nbsp;<code><var>cmp<\/var><\/code>). Returns a pointer to an item matching&nbsp;<code><var>key<\/var><\/code>, or&nbsp;<code>NULL<\/code>&nbsp;if none found.<\/dd>\n<dt><code>void qsort(void*&nbsp;<var>base<\/var>,&nbsp;size_t&nbsp;<var>n<\/var>,&nbsp;size_t&nbsp;<var>size<\/var>, int (*<var>cmp<\/var>)(const void*, const void*));<\/code><\/dt>\n<dd>Arranges into ascending order array&nbsp;<code><var>base<\/var><\/code>&nbsp;(of&nbsp;<code><var>n<\/var><\/code>&nbsp;objects each of size&nbsp;<code><var>size<\/var><\/code>) according to comparison function&nbsp;<code><var>cmp<\/var><\/code>.&nbsp;<code><var>cmp<\/var><\/code>&nbsp;must return negative value if first argument is less than second, zero if equal and positive if greater.<\/dd>\n<dt><code>int&nbsp;rand(void);<\/code><\/dt>\n<dd>Returns pseudo-random number in range&nbsp;<code>0<\/code>&nbsp;to&nbsp;<code>RAND_MAX<\/code>.<\/dd>\n<dt><code>void srand(unsigned int&nbsp;<var>seed<\/var>);<\/code><\/dt>\n<dd>Uses&nbsp;<code><var>seed<\/var><\/code>&nbsp;as seed for new sequence of pseudo-random numbers. Initial seed is&nbsp;<code>1<\/code>.<\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;string.h&gt;<\/h2>\n<dl>\n<dt><code>NULL<\/code><\/dt>\n<dd>Null pointer constant.<\/dd>\n<dt><code>size_t<\/code><\/dt>\n<dd>Type for objects declared to store result of&nbsp;<code>sizeof<\/code>&nbsp;operator.<\/dd>\n<dt><code>char* strcpy(char*&nbsp;<var>s<\/var>, const char*&nbsp;<var>ct<\/var>);<\/code><\/dt>\n<dd>Copies&nbsp;<code><var>ct<\/var><\/code>&nbsp;to&nbsp;<code><var>s<\/var><\/code>&nbsp;including terminating&nbsp;<code>NUL<\/code>&nbsp;and returns&nbsp;<code><var>s<\/var><\/code>.<\/dd>\n<dt><code>char* strncpy(char*&nbsp;<var>s<\/var>, const char*&nbsp;<var>ct<\/var>,&nbsp;size_t&nbsp;<var>n<\/var>);<\/code><\/dt>\n<dd>Copies at most&nbsp;<code><var>n<\/var><\/code>&nbsp;characters of&nbsp;<code><var>ct<\/var><\/code>&nbsp;to&nbsp;<code><var>s<\/var><\/code>. Pads with&nbsp;<code>NUL<\/code>&nbsp;characters if&nbsp;<code><var>ct<\/var><\/code>&nbsp;is of length less than&nbsp;<code><var>n<\/var><\/code>.&nbsp;<strong>Note that this may leave&nbsp;<code><var>s<\/var><\/code>&nbsp;without&nbsp;<code>NUL<\/code>-termination.<\/strong>&nbsp;Return&nbsp;<code><var>s<\/var><\/code>.<\/dd>\n<dt><code>char* strcat(char*&nbsp;<var>s<\/var>, const char*&nbsp;<var>ct<\/var>);<\/code><\/dt>\n<dd>Concatenate&nbsp;<code><var>ct<\/var><\/code>&nbsp;to&nbsp;<code><var>s<\/var><\/code>&nbsp;and return&nbsp;<code><var>s<\/var><\/code>.<\/dd>\n<dt><code>char* strncat(char*&nbsp;<var>s<\/var>, const char*&nbsp;<var>ct<\/var>,&nbsp;size_t&nbsp;<var>n<\/var>);<\/code><\/dt>\n<dd>Concatenate at most&nbsp;<code><var>n<\/var><\/code>&nbsp;characters of&nbsp;<code><var>ct<\/var><\/code>&nbsp;to&nbsp;<code><var>s<\/var><\/code>.&nbsp;<code>NUL<\/code>-terminates&nbsp;<code><var>s<\/var><\/code>&nbsp;and return it.<\/dd>\n<dt><code>int strcmp(const char*&nbsp;<var>cs<\/var>, const char*&nbsp;<var>ct<\/var>);<\/code><\/dt>\n<dd>Compares&nbsp;<code><var>cs<\/var><\/code>&nbsp;with&nbsp;<code><var>ct<\/var><\/code>, returning negative value if&nbsp;<code><var>cs<\/var>&lt;<var>ct<\/var><\/code>, zero if&nbsp;<code><var>cs<\/var>==<var>ct<\/var><\/code>, positive value if&nbsp;<code><var>cs<\/var>&gt;<var>ct<\/var><\/code>.<\/dd>\n<\/dl>\n<dl>\n<dt><code>int strncmp(const char*&nbsp;<var>cs<\/var>, const char*&nbsp;<var>ct<\/var>,&nbsp;size_t&nbsp;<var>n<\/var>);<\/code><\/dt>\n<\/dl>\n<dl>\n<dd>Compares at most (the first)&nbsp;<code><var>n<\/var><\/code>&nbsp;characters of&nbsp;<code><var>cs<\/var><\/code>&nbsp;and&nbsp;<code><var>ct<\/var><\/code>, returning negative value if&nbsp;<code><var>cs<\/var>&lt;<var>ct<\/var><\/code>, zero if&nbsp;<code><var>cs<\/var>==<var>ct<\/var><\/code>, positive value if&nbsp;<code><var>cs<\/var>&gt;<var>ct<\/var><\/code>.<\/dd>\n<dt><code>int strcoll(const char*&nbsp;<var>cs<\/var>, const char*&nbsp;<var>ct<\/var>);<\/code><\/dt>\n<dd>Compares&nbsp;<code><var>cs<\/var><\/code>&nbsp;with&nbsp;<code><var>ct<\/var><\/code>&nbsp;according to locale, returning negative value if&nbsp;<code><var>cs<\/var>&lt;<var>ct<\/var><\/code>, zero if&nbsp;<code><var>cs<\/var>==<var>ct<\/var><\/code>, positive value if&nbsp;<code><var>cs<\/var>&gt;<var>ct<\/var><\/code>.<\/dd>\n<dt><code>char* strchr(const char*&nbsp;<var>cs<\/var>, int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>Returns pointer to first occurrence of&nbsp;<code><var>c<\/var><\/code>&nbsp;in&nbsp;<code><var>cs<\/var><\/code>, or&nbsp;<code>NULL<\/code>&nbsp;if not found.<\/dd>\n<dt><code>char* strrchr(const char*&nbsp;<var>cs<\/var>, int&nbsp;<var>c<\/var>);<\/code><\/dt>\n<dd>Returns pointer to last occurrence of&nbsp;<code><var>c<\/var><\/code>&nbsp;in&nbsp;<code><var>cs<\/var><\/code>, or&nbsp;<code>NULL<\/code>&nbsp;if not found.<\/dd>\n<dt><code>size_t&nbsp;strspn(const char*&nbsp;<var>cs<\/var>, const char*&nbsp;<var>ct<\/var>);<\/code><\/dt>\n<dd>Returns length of prefix of&nbsp;<code><var>cs<\/var><\/code>&nbsp;which consists of characters which are in&nbsp;<code><var>ct<\/var><\/code>.<\/dd>\n<dt><code>size_t&nbsp;strcspn(const char*&nbsp;<var>cs<\/var>, const char*&nbsp;<var>ct<\/var>);<\/code><\/dt>\n<dd>Returns length of prefix of&nbsp;<code><var>cs<\/var><\/code>&nbsp;which consists of characters which are&nbsp;<em>not<\/em>&nbsp;in&nbsp;<code><var>ct<\/var><\/code>.<\/dd>\n<dt><code>char* strpbrk(const char*&nbsp;<var>cs<\/var>, const char*&nbsp;<var>ct<\/var>);<\/code><\/dt>\n<dd>Returns pointer to first occurrence in&nbsp;<code><var>cs<\/var><\/code>&nbsp;of any character of&nbsp;<code><var>ct<\/var><\/code>, or&nbsp;<code>NULL<\/code>&nbsp;if none is found.<\/dd>\n<dt><code>char* strstr(const char*&nbsp;<var>cs<\/var>, const char*&nbsp;<var>ct<\/var>);<\/code><\/dt>\n<dd>Returns pointer to first occurrence of&nbsp;<code><var>ct<\/var><\/code>&nbsp;within&nbsp;<code><var>cs<\/var><\/code>, or&nbsp;<code>NULL<\/code>&nbsp;if none is found.<\/dd>\n<dt><code>size_t&nbsp;strlen(const char*&nbsp;<var>cs<\/var>);<\/code><\/dt>\n<dd>Returns length of&nbsp;<code><var>cs<\/var><\/code>.<\/dd>\n<dt><code>char* strerror(int&nbsp;<var>n<\/var>);<\/code><\/dt>\n<dd>Returns pointer to implementation-defined message string corresponding with error&nbsp;<code><var>n<\/var><\/code>.<\/dd>\n<dt><code>char* strtok(char*&nbsp;<var>s<\/var>, const char*&nbsp;<var>t<\/var>);<\/code><\/dt>\n<\/dl>\n<dl>\n<dd>Searches&nbsp;<code><var>s<\/var><\/code>&nbsp;for next token delimited by any character from&nbsp;<code><var>ct<\/var><\/code>. Non-<code>NULL<\/code>&nbsp;<code><var>s<\/var><\/code>&nbsp;indicates the first call of a sequence. If a token is found, it is&nbsp;<code>NUL<\/code>-terminated and returned, otherwise&nbsp;<code>NULL<\/code>&nbsp;is returned.&nbsp;<code><var>ct<\/var><\/code>&nbsp;need not be identical for each call in a sequence.<\/dd>\n<\/dl>\n<dl>\n<dt><code>size_t&nbsp;strxfrm(char*&nbsp;<var>s<\/var>, const char*&nbsp;<var>ct<\/var>,&nbsp;size_t&nbsp;<var>n<\/var>);<\/code><\/dt>\n<dd>Stores in&nbsp;<code><var>s<\/var><\/code>&nbsp;no more than&nbsp;<code><var>n<\/var><\/code>&nbsp;characters (including terminating&nbsp;<code>NUL<\/code>) of a string produced from&nbsp;<code><var>ct<\/var><\/code>&nbsp;according to a locale-specific transformation. Returns length of&nbsp;<em>entire<\/em>&nbsp;transformed string.<\/dd>\n<dt><code>void*&nbsp;memcpy(void*&nbsp;<var>s<\/var>, const void*&nbsp;<var>ct<\/var>,&nbsp;size_t&nbsp;<var>n<\/var>);<\/code><\/dt>\n<dd>Copies&nbsp;<code><var>n<\/var><\/code>&nbsp;characters from&nbsp;<code><var>ct<\/var><\/code>&nbsp;to&nbsp;<code><var>s<\/var><\/code>&nbsp;and returns&nbsp;<code><var>s<\/var><\/code>.&nbsp;<strong><code><var>s<\/var><\/code>&nbsp;may be corrupted if objects overlap.<\/strong><\/dd>\n<dt><code>void* memmove(void*&nbsp;<var>s<\/var>, const void*&nbsp;<var>ct<\/var>,&nbsp;size_t&nbsp;<var>n<\/var>);<\/code><\/dt>\n<dd>Copies&nbsp;<code><var>n<\/var><\/code>&nbsp;characters from&nbsp;<code><var>ct<\/var><\/code>&nbsp;to&nbsp;<code><var>s<\/var><\/code>&nbsp;and returns&nbsp;<code><var>s<\/var><\/code>.&nbsp;<strong><code><var>s<\/var><\/code>&nbsp;will not be corrupted if objects overlap.<\/strong><\/dd>\n<dt><code>int memcmp(const void*&nbsp;<var>cs<\/var>, const void*&nbsp;<var>ct<\/var>,&nbsp;size_t&nbsp;<var>n<\/var>);<\/code><\/dt>\n<dd>Compares at most (the first)&nbsp;<code><var>n<\/var><\/code>&nbsp;characters of&nbsp;<code><var>cs<\/var><\/code>&nbsp;and&nbsp;<code><var>ct<\/var><\/code>, returning negative value if&nbsp;<code><var>cs<\/var>&lt;<var>ct<\/var><\/code>, zero if&nbsp;<code><var>cs<\/var>==<var>ct<\/var><\/code>, positive value if&nbsp;<code><var>cs<\/var>&gt;<var>ct<\/var><\/code>.<\/dd>\n<dt><code>void* memchr(const void*&nbsp;<var>cs<\/var>, int&nbsp;<var>c<\/var>,&nbsp;size_t&nbsp;<var>n<\/var>);<\/code><\/dt>\n<dd>Returns pointer to first occurrence of&nbsp;<code><var>c<\/var><\/code>&nbsp;in first&nbsp;<code><var>n<\/var><\/code>&nbsp;characters of&nbsp;<code><var>cs<\/var><\/code>, or&nbsp;<code>NULL<\/code>&nbsp;if not found.<\/dd>\n<dt><code>void* memset(void*&nbsp;<var>s<\/var>, int&nbsp;<var>c<\/var>,&nbsp;size_t&nbsp;<var>n<\/var>);<\/code><\/dt>\n<dd>Replaces each of the first&nbsp;<code><var>n<\/var><\/code>&nbsp;characters of&nbsp;<code><var>s<\/var><\/code>&nbsp;by&nbsp;<code><var>c<\/var><\/code>&nbsp;and returns&nbsp;<code><var>s<\/var><\/code>.<\/dd>\n<\/dl>\n[Contents]\n<h2>&lt;time.h&gt;<\/h2>\n<dl>\n<dt><code>CLOCKS_PER_SEC<\/code><\/dt>\n<dd>The number of&nbsp;<code>clock_t<\/code>&nbsp;units per second.<\/dd>\n<dt><code>NULL<\/code><\/dt>\n<dd>Null pointer constant.<\/dd>\n<dt><code>clock_t<\/code><\/dt>\n<dd>An arithmetic type elapsed processor representing time.<\/dd>\n<dt><code>time_t<\/code><\/dt>\n<dd>An arithmetic type representing calendar time.<\/dd>\n<dt><code>struct tm<\/code><\/dt>\n<dd>Represents the components of calendar time:<\/p>\n<dl>\n<dt><code>int tm_sec;<\/code><\/dt>\n<dd>seconds after the minute<\/dd>\n<dt><code>int tm_min;<\/code><\/dt>\n<dd>minutes after the hour<\/dd>\n<dt><code>int tm_hour;<\/code><\/dt>\n<dd>hours since midnight<\/dd>\n<dt><code>int tm_mday;<\/code><\/dt>\n<dd>day of the month<\/dd>\n<dt><code>int tm_mon;<\/code><\/dt>\n<dd>months&nbsp;<strong>since<\/strong>&nbsp;January<\/dd>\n<dt><code>int tm_year;<\/code><\/dt>\n<dd>years since 1900<\/dd>\n<dt><code>int tm_wday;<\/code><\/dt>\n<dd>days since Sunday<\/dd>\n<dt><code>int tm_yday;<\/code><\/dt>\n<dd>days since January 1<\/dd>\n<dt><code>int tm_isdst;<\/code><\/dt>\n<dd>Daylight Saving Time flag : is positive if DST is in effect, zero if not in effect, negative if information not known.<\/dd>\n<\/dl>\n<p>Implementations may change field order and include additional fields.<\/dd>\n<dt><code>clock_t&nbsp;clock(void);<\/code><\/dt>\n<dd>Returns elapsed processor time used by program or&nbsp;<code>-1<\/code>&nbsp;if not available.<\/dd>\n<dt><code>time_t&nbsp;time(time_t*&nbsp;<var>tp<\/var>);<\/code><\/dt>\n<dd>Returns current calendar time or&nbsp;<code>-1<\/code>&nbsp;if not available. If&nbsp;<code><var>tp<\/var><\/code>&nbsp;is non-<code>NULL<\/code>, return value is also assigned to&nbsp;<code>*<var>tp<\/var><\/code>.<\/dd>\n<dt><code>double difftime(time_t&nbsp;<var>time2<\/var>,&nbsp;time_t&nbsp;<var>time1<\/var>);<\/code><\/dt>\n<dd>Returns the difference in seconds between&nbsp;<code><var>time2<\/var><\/code>&nbsp;and&nbsp;<code><var>time1<\/var><\/code>.<\/dd>\n<dt><code>time_t&nbsp;mktime(struct tm*&nbsp;<var>tp<\/var>);<\/code><\/dt>\n<dd>If necessary, adjusts fields of&nbsp;<code>*<var>tp<\/var><\/code>&nbsp;to fall withing normal ranges. Returns the corresponding calendar time, or&nbsp;<code>-1<\/code>&nbsp;if it cannot be represented.<\/dd>\n<dt><code>char*&nbsp;asctime(const&nbsp;struct tm*&nbsp;<var>tp<\/var>);<\/code><\/dt>\n<dd>Returns the given time as a string of the form:<br \/>\n<code>Sun Jan 3 13:08:42 1988\\n\\0<\/code><\/dd>\n<dt><code>char* ctime(const&nbsp;time_t*&nbsp;<var>tp<\/var>);<\/code><\/dt>\n<dd>Returns string equivalent to calendar time&nbsp;<code><var>tp<\/var><\/code>&nbsp;converted to local time. Equivalent to:<br \/>\n<code>asctime(localtime(tp))<\/code><\/dd>\n<\/dl>\n<dl>\n<dt><code>struct tm* gmtime(const&nbsp;time_t*&nbsp;<var>tp<\/var>);<\/code><\/dt>\n<dd>Returns calendar time&nbsp;<code>*<var>tp<\/var><\/code>&nbsp;converted to Coordinated Universal Time, or&nbsp;<code>NULL<\/code>&nbsp;if not available.<\/dd>\n<dt><code>struct tm*&nbsp;localtime(const&nbsp;time_t*&nbsp;<var>tp<\/var>);<\/code><\/dt>\n<dd>Returns calendar time&nbsp;<code>*<var>tp<\/var><\/code>&nbsp;converted into local time.<\/dd>\n<dt><code>size_t strftime(char*&nbsp;<var>s<\/var>, size_t&nbsp;<var>smax<\/var>, const char*&nbsp;<var>fmt<\/var>, const&nbsp;struct tm*&nbsp;<var>tp<\/var>);<\/code><\/dt>\n<dd>Formats&nbsp;<code>*<var>tp<\/var><\/code>&nbsp;into&nbsp;<code><var>s<\/var><\/code>&nbsp;according to&nbsp;<code><var>fmt<\/var><\/code>. Places no more than&nbsp;<code><var>smax<\/var><\/code>&nbsp;characters into&nbsp;<code><var>s<\/var><\/code>, and returns number of characters produced (excluding terminating&nbsp;<code>NUL<\/code>), or&nbsp;<code>0<\/code>&nbsp;if greater than&nbsp;<code><var>smax<\/var><\/code>. Formatting conversions (<code>%<var>c<\/var><\/code>) are:<\/p>\n<dl>\n<dt><code>A<\/code><\/dt>\n<dd>name of weekday<\/dd>\n<dt><code>a<\/code><\/dt>\n<dd>abbreviated name of weekday<\/dd>\n<dt><code>B<\/code><\/dt>\n<dd>name of month<\/dd>\n<dt><code>b<\/code><\/dt>\n<dd>abbreviated name of month<\/dd>\n<dt><code>c<\/code><\/dt>\n<dd>local date and time representation<\/dd>\n<dt><code>d<\/code><\/dt>\n<dd>day of month [<code>01<\/code>&#8211;<code>31<\/code>]<\/dd>\n<dt><code>H<\/code><\/dt>\n<dd>hour (24-hour clock) [<code>00<\/code>&#8211;<code>23<\/code>]<\/dd>\n<dt><code>I<\/code><\/dt>\n<dd>hour (12-hour clock) [<code>01<\/code>&#8211;<code>12<\/code>]<\/dd>\n<dt><code>j<\/code><\/dt>\n<dd>day of year [<code>001<\/code>&#8211;<code>366<\/code>]<\/dd>\n<dt><code>M<\/code><\/dt>\n<dd>minute [<code>00<\/code>&#8211;<code>59<\/code>]<\/dd>\n<dt><code>m<\/code><\/dt>\n<dd>month [<code>01<\/code>&#8211;<code>12<\/code>]<\/dd>\n<dt><code>p<\/code><\/dt>\n<dd>local equivalent of &#8222;<code>AM<\/code>&#8221; or &#8222;<code>PM<\/code>&#8222;<\/dd>\n<dt><code>S<\/code><\/dt>\n<dd>second [<code>00<\/code>&#8211;<code>61<\/code>]<\/dd>\n<dt><code>U<\/code><\/dt>\n<dd>week number of year (Sunday as 1st day of week) [<code>00<\/code>&#8211;<code>53<\/code>]<\/dd>\n<dt><code>W<\/code><\/dt>\n<dd>week number of year (Monday as 1st day of week) [<code>00<\/code>&#8211;<code>53<\/code>]<\/dd>\n<dt><code>w<\/code><\/dt>\n<dd>weekday (Sunday as&nbsp;<code>0<\/code>) [<code>0<\/code>&#8211;<code>6<\/code>]<\/dd>\n<dt><code>X<\/code><\/dt>\n<dd>local time representation<\/dd>\n<dt><code>x<\/code><\/dt>\n<dd>local date representation<\/dd>\n<dt><code>Y<\/code><\/dt>\n<dd>year with century<\/dd>\n<dt><code>y<\/code><\/dt>\n<dd>year without century [<code>00<\/code>&#8211;<code>99<\/code>]<\/dd>\n<dt><code>Z<\/code><\/dt>\n<dd>name (if any) of time zone<\/dd>\n<dt><code>%<\/code><\/dt>\n<dd><code>%<\/code><\/dd>\n<\/dl>\n<\/dd>\n<\/dl>\n<p><em>Local<\/em>&nbsp;time may differ from&nbsp;<em>calendar<\/em>&nbsp;time because of time zone.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>C Standard Library Contents &lt;assert.h&gt;&nbsp;: Diagnostics &lt;ctype.h&gt;&nbsp;: Character Class Tests &lt;errno.h&gt;&nbsp;: Error Codes Reported by<a class=\"read-more\" href=\"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/\" title=\"Poka\u017c artyku\u0142 C Standard Library\">wi\u0119cej<\/a><\/p>\n","protected":false},"author":14,"featured_media":0,"parent":979,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"inline_featured_image":false,"ngg_post_thumbnail":0,"footnotes":""},"class_list":["post-985","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>C Standard Library - Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"C Standard Library - Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej\" \/>\n<meta property=\"og:description\" content=\"C Standard Library Contents &lt;assert.h&gt;&nbsp;: Diagnostics &lt;ctype.h&gt;&nbsp;: Character Class Tests &lt;errno.h&gt;&nbsp;: Error Codes Reported bywi\u0119cej\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/\" \/>\n<meta property=\"og:site_name\" content=\"Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej\" \/>\n<meta property=\"article:modified_time\" content=\"2024-07-22T07:56:57+00:00\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data1\" content=\"20 minut\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/\",\"url\":\"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/\",\"name\":\"C Standard Library - Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej\",\"isPartOf\":{\"@id\":\"https:\/\/wi.pb.edu.pl\/p\/#website\"},\"datePublished\":\"2024-07-22T07:54:09+00:00\",\"dateModified\":\"2024-07-22T07:56:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Strona g\u0142\u00f3wna\",\"item\":\"https:\/\/wi.pb.edu.pl\/p\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"dr in\u017c. Anna \u0141upi\u0144ska &#8211; Dubicka\",\"item\":\"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Podstawy programowania\",\"item\":\"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"C Standard Library\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/wi.pb.edu.pl\/p\/#website\",\"url\":\"https:\/\/wi.pb.edu.pl\/p\/\",\"name\":\"Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/wi.pb.edu.pl\/p\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"C Standard Library - Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/","og_locale":"pl_PL","og_type":"article","og_title":"C Standard Library - Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej","og_description":"C Standard Library Contents &lt;assert.h&gt;&nbsp;: Diagnostics &lt;ctype.h&gt;&nbsp;: Character Class Tests &lt;errno.h&gt;&nbsp;: Error Codes Reported bywi\u0119cej","og_url":"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/","og_site_name":"Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej","article_modified_time":"2024-07-22T07:56:57+00:00","twitter_card":"summary_large_image","twitter_misc":{"Szacowany czas czytania":"20 minut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/","url":"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/","name":"C Standard Library - Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej","isPartOf":{"@id":"https:\/\/wi.pb.edu.pl\/p\/#website"},"datePublished":"2024-07-22T07:54:09+00:00","dateModified":"2024-07-22T07:56:57+00:00","breadcrumb":{"@id":"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/c-standard-library\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Strona g\u0142\u00f3wna","item":"https:\/\/wi.pb.edu.pl\/p\/"},{"@type":"ListItem","position":2,"name":"dr in\u017c. Anna \u0141upi\u0144ska &#8211; Dubicka","item":"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/"},{"@type":"ListItem","position":3,"name":"Podstawy programowania","item":"https:\/\/wi.pb.edu.pl\/p\/anna-lupinska-dubicka\/podstawy-programowania\/"},{"@type":"ListItem","position":4,"name":"C Standard Library"}]},{"@type":"WebSite","@id":"https:\/\/wi.pb.edu.pl\/p\/#website","url":"https:\/\/wi.pb.edu.pl\/p\/","name":"Strony pracownik\u00f3w Wydzia\u0142u Informatyki Politechniki Bia\u0142ostockiej","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wi.pb.edu.pl\/p\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"}]}},"_links":{"self":[{"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/pages\/985","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/users\/14"}],"replies":[{"embeddable":true,"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/comments?post=985"}],"version-history":[{"count":5,"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/pages\/985\/revisions"}],"predecessor-version":[{"id":990,"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/pages\/985\/revisions\/990"}],"up":[{"embeddable":true,"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/pages\/979"}],"wp:attachment":[{"href":"https:\/\/wi.pb.edu.pl\/p\/wp-json\/wp\/v2\/media?parent=985"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}