.. This file is computer-generated. Edit stdlib/docs.py instead of this file. ============================= Access the C Standard Library ============================= .. automodule:: cslug.stdlib ------- The functions on this page are grouped by the header file they are included from. Each function has a row of icons corresponding to the platforms that it can be found on. See the key below for which platform each icon symbolises: * |Android| Android * |Cygwin| Cygwin (UNIX emulator for Windows). * |DragonFlyBSD| DragonFlyBSD * |FreeBSD| FreeBSD * |glibc Linux| Linux distributions using GNU libc (i.e. the vast majority of them) * |macOS| macOS (``x86_64`` or ``arm64``) * |MSYS2| MSYS2 (another UNIX emulator for Windows) * |musl Linux| Linux distributions using musl libc (most famously Alpine) * |NetBSD| NetBSD * |Omnios| Omnios * |OpenBSD| OpenBSD * |Solaris| Solaris * |Windows MSVCRT| Windows 7 to 10 (using the MSVC runtime) * |Windows UCRT| Windows 11 (using the new Universal C Runtime) **Credits**: The textual descriptions on this page were taken from `here `_. .. |Solaris| image:: platforms/Solaris.png :height: 20px :alt: Solaris .. |glibc Linux| image:: platforms/glibc\ Linux.png :height: 20px :alt: glibc Linux .. |macOS| image:: platforms/macOS.png :height: 20px :alt: macOS .. |blank| image:: platforms/blank.png :height: 20px :alt: blank .. |Windows UCRT| image:: platforms/Windows\ UCRT.png :height: 20px :alt: Windows UCRT .. |DragonFlyBSD| image:: platforms/DragonFlyBSD.png :height: 20px :alt: DragonFlyBSD .. |Windows MSVCRT| image:: platforms/Windows\ MSVCRT.png :height: 20px :alt: Windows MSVCRT .. |FreeBSD| image:: platforms/FreeBSD.png :height: 20px :alt: FreeBSD .. |Cygwin| image:: platforms/Cygwin.png :height: 20px :alt: Cygwin .. |NetBSD| image:: platforms/NetBSD.png :height: 20px :alt: NetBSD .. |Omnios| image:: platforms/Omnios.png :height: 20px :alt: Omnios .. |MSYS2| image:: platforms/MSYS2.png :height: 20px :alt: MSYS2 .. |musl Linux| image:: platforms/musl\ Linux.png :height: 20px :alt: musl Linux .. |Android| image:: platforms/Android.png :height: 20px :alt: Android .. |OpenBSD| image:: platforms/OpenBSD.png :height: 20px :alt: OpenBSD ---- assert.h --------------- Functions defined with :c:`#include `. .. _`stdlib-assert`: | :c:`void assert(int expression);` | |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| | Prints a diagnostic message and ends the program if the expression is false. ---- ctype.h -------------- Functions defined with :c:`#include `. .. _`stdlib-isalnum`: | :c:`int isalnum(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is alphanumeric. .. _`stdlib-isalpha`: | :c:`int isalpha(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is alphabetic. .. _`stdlib-isascii`: | :c:`int isascii(int c);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is within the 7-bit US-ASCII range. .. _`stdlib-isblank`: | :c:`int isblank(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is a blank or tab character. .. _`stdlib-iscntrl`: | :c:`int iscntrl(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is a control character. .. _`stdlib-isdigit`: | :c:`int isdigit(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is a decimal digit. .. _`stdlib-isgraph`: | :c:`int isgraph(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is a printable character excluding the space. .. _`stdlib-islower`: | :c:`int islower(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is a lowercase letter. .. _`stdlib-isprint`: | :c:`int isprint(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is a printable character including the space. .. _`stdlib-ispunct`: | :c:`int ispunct(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is a punctuation character. .. _`stdlib-isspace`: | :c:`int isspace(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is a whitespace character. .. _`stdlib-isupper`: | :c:`int isupper(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is an uppercase letter. .. _`stdlib-toascii`: | :c:`int toascii(int c);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **c** to a character in the 7-bit US-ASCII character set. .. _`stdlib-tolower`: | :c:`int tolower(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **c** to lowercase. .. _`stdlib-toupper`: | :c:`int toupper(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **c** to uppercase. ---- locale.h --------------- Functions defined with :c:`#include `. .. _`stdlib-localeconv`: | :c:`struct lconv *localeconv(void);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Formats numeric quantities in struct lconv according to the current locale. .. _`stdlib-setlocale`: | :c:`char *setlocale(int category, const char *locale);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Changes or queries variables defined in the **locale**. .. _`stdlib-wcslocaleconv`: | :c:`struct wcslconv *wcslocaleconv(void);` | |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| | Formats numeric quantities in struct wcslconv according to the current locale. ---- math.h ------------- Functions defined with :c:`#include `. .. _`stdlib-acos`: | :c:`double acos(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the arc cosine of **x**. .. _`stdlib-asin`: | :c:`double asin(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the arc sine of **x**. .. _`stdlib-atan`: | :c:`double atan(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the arc tangent of **x**. .. _`stdlib-atan2`: | :c:`double atan2(double y, double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the arc tangent of **y/x**. .. _`stdlib-ceil`: | :c:`double ceil(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the double value representing the smallest integer that is greater than or equal to **x**. .. _`stdlib-cos`: | :c:`double cos(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the cosine of **x**. .. _`stdlib-cosh`: | :c:`double cosh(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the hyperbolic cosine of **x**. .. _`stdlib-erf`: | :c:`double erf(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the error function of **x**. .. _`stdlib-erfc`: | :c:`double erfc(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the error function for large values of **x**. .. _`stdlib-exp`: | :c:`double exp(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the exponential function of a floating-point argument **x**. .. _`stdlib-fabs`: | :c:`double fabs(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the absolute value of a floating-point argument **x**. .. _`stdlib-floor`: | :c:`double floor(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the floating-point value representing the largest integer less than or equal to **x**. .. _`stdlib-fmod`: | :c:`double fmod(double x, double y);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the floating-point remainder of **x/y**. .. _`stdlib-frexp`: | :c:`double frexp(double x, int *expptr);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Separates a floating-point number into its mantissa and exponent. .. _`stdlib-gamma`: | :c:`double gamma(double x);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |blank| |Android| |OpenBSD| | Computes the Gamma Function .. _`stdlib-hypot`: | :c:`double hypot(double side1, double side2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the hypotenuse of a right-angled triangle with sides of length **side1** and **side2**. .. _`stdlib-j0`: | :c:`double j0(double x);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the Bessel function value of the first kind of order 0. .. _`stdlib-j1`: | :c:`double j1(double x);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the Bessel function value of the first kind of order 1. .. _`stdlib-jn`: | :c:`double jn(int n, double x);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the Bessel function value of the first kind of order n. .. _`stdlib-ldexp`: | :c:`double ldexp(double x, int exp);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Returns the value of **x** multiplied by (2 to the power of **exp**). .. _`stdlib-log`: | :c:`double log(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the natural logarithm of **x**. .. _`stdlib-log10`: | :c:`double log10(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the base 10 logarithm of **x**. .. _`stdlib-modf`: | :c:`double modf(double x, double *intptr);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Breaks down the floating-point value **x** into fractional and integral parts. .. _`stdlib-nextafter`: | :c:`double nextafter(double x, double y);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the next representable value after **x** in the direction of **y**. .. _`stdlib-nextafterl`: | :c:`long double nextafterl(long double x, long double y);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the next representable value after **x** in the direction of **y**. .. _`stdlib-nexttoward`: | :c:`double nexttoward(double x, long double y);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the next representable value after **x** in the direction of **y**. .. _`stdlib-nexttowardl`: | :c:`long double nexttowardl(long double x, long double y);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the next representable value after **x** in the direction of **y**. .. _`stdlib-pow`: | :c:`double pow(double x, double y);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the value **x** to the power **y**. .. _`stdlib-sin`: | :c:`double sin(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the sine of **x**. .. _`stdlib-sinh`: | :c:`double sinh(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the hyperbolic sine of **x**. .. _`stdlib-sqrt`: | :c:`double sqrt(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the square root of **x**. .. _`stdlib-tan`: | :c:`double tan(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the tangent of **x**. .. _`stdlib-tanh`: | :c:`double tanh(double x);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the hyperbolic tangent of **x**. .. _`stdlib-y0`: | :c:`double y0(double x);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the Bessel function value of the second kind of order 0. .. _`stdlib-y1`: | :c:`double y1(double x);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the Bessel function value of the second kind of order 1. .. _`stdlib-yn`: | :c:`double yn(int n, double x);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the Bessel function value of the second kind of order **n.** ---- regex.h -------------- Functions defined with :c:`#include `. .. _`stdlib-regcomp`: | :c:`int regcomp(regex_t *preg, const char *pattern, int cflags);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Compiles the source regular expression pointed to by **pattern** into an executable version and stores it in the location pointed to by **preg**. .. _`stdlib-regerror`: | :c:`size_t regerror(int errcode, const regex_t *preg, char *errbuf, size_t errbuf_size);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Finds the description for the error code **errcode** for the regular expression **preg**. .. _`stdlib-regexec`: | :c:`int regexec(const regex_t *preg, const char *string, size_t nmatch, regmatch_t *pmatch, int eflags);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Compares the null-ended string **string** against the compiled regular expression **preg** to find a match between the two. .. _`stdlib-regfree`: | :c:`void regfree(regex_t *preg);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Frees any memory that was allocated by regcomp to implement the regular expression **preg**. ---- signal.h --------------- Functions defined with :c:`#include `. .. _`stdlib-raise`: | :c:`int raise(int sig);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Sends the signal **sig** to the running program. ---- stdarg.h --------------- Functions defined with :c:`#include `. .. _`stdlib-va_start`: | :c:`void va_start(va_list *arg_ptr, variable_name*);` | |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| | Initializes **arg_ptr** for subsequent use by **va_arg** and **va_end**. | :c:`int vfprintf(FILE *stream, const char *format, *va_list arg_ptr*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Formats and prints characters to the output **stream** using a variable number of arguments. .. _`stdlib-vfwprintf`: | :c:`int vfwprintf(FILE *stream, const wchar_t *format, *va_list arg*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Equivalent to fwprintf, except that the variable argument list is replaced by **arg**. | :c:`int vfwscanf(FILE *stream, const wchar_t *format, *va_list arg_ptr*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads wide data from a specified stream into locations given by a variable number of arguments. | :c:`int vscanf(const char *format, *va_list arg_ptr*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads data from stdin into locations given by a variable number of arguments. | :c:`int vsscanf(const char*buffer, const char *format, *va_list arg_ptr*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads data from a buffer into locations given by a variable number of arguments. .. _`stdlib-vswprintf`: | :c:`int vswprintf(wchar_t *wcsbuffer, size_t n, const wchar_t *format, *va_list arg*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Formats and stores a series of wide characters and values in the buffer **wcsbuffer**. .. _`stdlib-vwprintf`: | :c:`int vwprintf(const wchar_t *format, *va_list arg*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Equivalent to wprintf, except that the variable argument list is replaced by **arg**. .. _`stdlib-wctob`: | :c:`int wctob(wint_t wc);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Determines whether **wc** corresponds to a member of the extended character set whose multibyte character representation is a single byte when in the initial shift state. ---- stdio.h -------------- Functions defined with :c:`#include `. .. _`stdlib-btowc`: | :c:`wint_t btowc(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Determines whether **c** constitutes a valid multibyte character in the initial shift state. .. _`stdlib-clearerr`: | :c:`void clearerr(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Resets the error indicators and the end-of-file indicator for **stream**. .. _`stdlib-fclose`: | :c:`int fclose(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Closes the specified **stream**. .. _`stdlib-fdopen`: | :c:`FILE *fdopen(int handle, const char *type);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Associates an input or output stream with the file identified by handle. .. _`stdlib-feof`: | :c:`int feof(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests whether the end-of-file flag is set for a given **stream**. .. _`stdlib-ferror`: | :c:`int ferror(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests for an error indicator in reading from or writing to **stream**. .. _`stdlib-fflush`: | :c:`int fflush(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Writes the contents of the buffer associated with the output **stream**. .. _`stdlib-fgetc`: | :c:`int fgetc(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads a single unsigned character from the input **stream**. .. _`stdlib-fgetpos`: | :c:`int fgetpos(FILE *stream, fpos_t *pos);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Stores the current position of the file pointer associated with **stream** into the object pointed to by **pos**. .. _`stdlib-fgets`: | :c:`char *fgets(char *string, int n, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads a string from the input **stream**. .. _`stdlib-fgetwc`: | :c:`wint_t fgetwc(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads the next multibyte character from the input stream pointed to by **stream**. .. _`stdlib-fgetws`: | :c:`wchar_t *fgetws(wchar_t *wcs, int n, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads wide characters from the stream into the array pointed to by **wcs**. .. _`stdlib-fileno`: | :c:`int fileno(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Determines the file handle currently associated with stream. .. _`stdlib-fopen`: | :c:`FILE *fopen(const char *filename, const char *mode);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Opens the specified file. .. _`stdlib-fprintf`: | :c:`int fprintf(FILE *stream, const char **format-string*, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Formats and prints characters and values to the output **stream**. .. _`stdlib-fputc`: | :c:`int fputc(int c, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Prints a character to the output **stream**. .. _`stdlib-fputs`: | :c:`int fputs(const char *string, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Copies a string to the output **stream**. .. _`stdlib-fputwc`: | :c:`wint_t fputwc(wchar_t wc, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the wide character **wc** to a multibyte character and writes it to the output stream pointed to by **stream** at the current position. .. _`stdlib-fputws`: | :c:`int fputws(const wchar_t *wcs, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the wide-character string **wcs** to a multibyte-character string and writes it to **stream** as a multibyte character string. .. _`stdlib-fread`: | :c:`size_t fread(void *buffer, size_t size, size_t count, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads up to count items of **size** length from the input **stream**, and stores them in **buffer**. .. _`stdlib-freopen`: | :c:`FILE *freopen(const char *filename, const char *mode, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Closes **stream**, and reassigns it to the file specified. .. _`stdlib-fscanf`: | :c:`int fscanf(FILE *stream, const char **format-string*, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads data from **stream** into locations given by **arg-list**. .. _`stdlib-fseek`: | :c:`int fseek(FILE *stream, long int offset, int origin);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Changes the current file position associated with **stream** to a new location. .. _`stdlib-fsetpos`: | :c:`int fsetpos(FILE *stream, const fpos_t *pos);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Moves the current file position to a new location determined by **pos**. .. _`stdlib-ftell`: | :c:`long int ftell(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Gets the current position of the file pointer. .. _`stdlib-fwide`: | :c:`int fwide(FILE *stream, int mode);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Determines the orientation of the stream pointed to by **stream**. .. _`stdlib-fwprintf`: | :c:`int fwprintf(FILE *stream, const wchar_t *format, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Writes output to the stream pointed to by **stream**. .. _`stdlib-fwrite`: | :c:`size_t fwrite(const void *buffer, size_t size,size_t count, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Writes up to **count** items of **size** length from **buffer** to **stream**. .. _`stdlib-fwscanf`: | :c:`int fwscanf(FILE *stream, const wchar_t *format, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads input from the stream pointed to by **stream**. .. _`stdlib-getc`: | :c:`int getc(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads a single character from the input **stream**. .. _`stdlib-getchar`: | :c:`int getchar(void);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads a single character from **stdin.** .. _`stdlib-gets`: | :c:`char *gets(char *buffer);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |blank| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |blank| | Reads a string from **stdin**, and stores it in **buffer**. .. _`stdlib-getwc`: | :c:`wint_t getwc(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads the next multibyte character from **stream**, converts it to a wide character and advances the associated file position indicator for **stream**. .. _`stdlib-perror`: | :c:`void perror(const char *string);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Prints an error message to stderr. .. _`stdlib-printf`: | :c:`int printf(const char **format-string*, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Formats and prints characters and values to stdout. .. _`stdlib-putc`: | :c:`int putc(int c, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Prints **c** to the output **stream**. .. _`stdlib-putchar`: | :c:`int putchar(int c);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Prints **c** to stdout. .. _`stdlib-puts`: | :c:`int puts(const char *string);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Prints a string to stdout. .. _`stdlib-remove`: | :c:`int remove(const char *filename);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Deletes the file specified by **filename**. .. _`stdlib-rename`: | :c:`int rename(const char *oldname, const char *newname);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Renames the specified file. .. _`stdlib-rewind`: | :c:`void rewind(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Repositions the file pointer associated with **stream** to the beginning of the file. .. _`stdlib-scanf`: | :c:`int scanf(const char **format-string*, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads data from stdin into locations given by **arg-list**. .. _`stdlib-setbuf`: | :c:`void setbuf(FILE *stream, char *buffer);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Controls buffering for **stream**. .. _`stdlib-setvbuf`: | :c:`int setvbuf(FILE *stream, char *buf, int type, size_t size);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Controls buffering and buffer **size** for **stream**. .. _`stdlib-sprintf`: | :c:`int sprintf(char *buffer, const char **format-string*, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Formats and stores characters and values in **buffer**. .. _`stdlib-sscanf`: | :c:`int sscanf(const char *buffer, const char *format, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads data from **buffer** into the locations given by **arg-list**. .. _`stdlib-tmpfile`: | :c:`FILE *tmpfile(void);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Creates a temporary binary file and opens it. .. _`stdlib-tmpnam`: | :c:`char *tmpnam(char *string);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Generates a temporary file name. .. _`stdlib-ungetc`: | :c:`int ungetc(int c, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Pushes **c** back onto the input **stream**. .. _`stdlib-ungetwc`: | :c:`wint_t ungetwc(wint_t wc, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Pushes the wide character **wc** back onto the input stream. .. _`stdlib-vfprintf`: | :c:`int vfprintf(FILE *stream, const char *format, *va_list arg_ptr*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Formats and prints characters to the output **stream** using a variable number of arguments. | :c:`int vfwprintf(FILE *stream, const wchar_t *format, *va_list arg*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Equivalent to fwprintf, except that the variable argument list is replaced by **arg**. .. _`stdlib-vfwscanf`: | :c:`int vfwscanf(FILE *stream, const wchar_t *format, *va_list arg_ptr*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads wide data from a specified stream into locations given by a variable number of arguments. .. _`stdlib-vscanf`: | :c:`int vscanf(const char *format, *va_list arg_ptr*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads data from stdin into locations given by a variable number of arguments. .. _`stdlib-vsscanf`: | :c:`int vsscanf(const char*buffer, const char *format, *va_list arg_ptr*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads data from a buffer into locations given by a variable number of arguments. .. _`stdlib-vswscanf`: | :c:`int vswscanf(const wchar_t *buffer, const wchar_t *format, *va_list arg_ptr*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads wide data from a buffer into locations given by a variable number of arguments. .. _`stdlib-vwscanf`: | :c:`int vwscanf(const wchar_t *format, *va_list arg_ptr*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads wide data from stdin into locations given by a variable number of arguments. ---- stdlib.h --------------- Functions defined with :c:`#include `. .. _`stdlib-abort`: | :c:`void abort(void);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Stops a program abnormally. .. _`stdlib-abs`: | :c:`int abs(int n);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the absolute value of an integer argument **n**. .. _`stdlib-atof`: | :c:`double atof(const char *string);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **string** to a double-precision floating-point value. .. _`stdlib-atoi`: | :c:`int atoi(const char *string);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **string** to an integer. .. _`stdlib-atol`: | :c:`long int atol(const char *string);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **string** to a long integer. .. _`stdlib-calloc`: | :c:`void *calloc(size_t num, size_t size);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reserves storage space for an array of **num** elements, each of size **size**, and initializes the values of all elements to 0. .. _`stdlib-exit`: | :c:`void exit(int status);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Ends a program normally. .. _`stdlib-free`: | :c:`void free(void *ptr);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Frees a block of storage. .. _`stdlib-getenv`: | :c:`char *getenv(const char *varname);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Searches environment variables for **varname**. .. _`stdlib-labs`: | :c:`long int labs(long int n);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the absolute value of **n**. .. _`stdlib-malloc`: | :c:`void *malloc(size_t size);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reserves a block of storage. .. _`stdlib-mblen`: | :c:`int mblen(const char *string, size_t n);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Determines the length of a multibyte character **string**. .. _`stdlib-mbstowcs`: | :c:`size_t mbstowcs(wchar_t *pwc, const char *string, size_t n);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the multibyte characters in **string** to their corresponding wchar_t codes, and stores not more than **n** codes in **pwc**. .. _`stdlib-mbtowc`: | :c:`int mbtowc(wchar_t *pwc, const char *string, size_t n);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Stores the wchar_t code corresponding to the first **n** bytes of multibyte character **string** into the wchar_t character **pwc**. .. _`stdlib-putenv`: | :c:`int *putenv(const char *varname);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Sets the value of an environment variable by altering an existing variable or creating a new one. .. _`stdlib-rand`: | :c:`int rand(void);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Returns a pseudo-random integer. .. _`stdlib-rand_r`: | :c:`int rand_r(void);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Returns a pseudo-random integer. (Restartable version) .. _`stdlib-realloc`: | :c:`void *realloc(void *ptr, size_t size);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Changes the **size** of a previously reserved storage block. .. _`stdlib-srand`: | :c:`void srand(unsigned int seed);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Sets the **seed** for the pseudo-random number generator. .. _`stdlib-strtod`: | :c:`double strtod(const char *nptr, char **endptr);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **nptr** to a double precision value. .. _`stdlib-strtof`: | :c:`float strtof(const char *nptr, char **endptr);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **nptr** to a float value. .. _`stdlib-strtol`: | :c:`long int strtol(const char *nptr, char **endptr, int base);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **nptr** to a signed long integer. .. _`stdlib-strtold`: | :c:`long double strtold(const char *nptr, char **endptr);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **nptr** to a long double value. .. _`stdlib-strtoul`: | :c:`unsigned long int strtoul(const char *string1, char **string2, int base);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **string1** to an unsigned long integer. .. _`stdlib-system`: | :c:`int system(const char *string);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Passes **string** to the system command analyzer. .. _`stdlib-wcstombs`: | :c:`size_t wcstombs(char *dest, const wchar_t *string, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the wchar_t **string** into a multibyte string **dest**. .. _`stdlib-wctomb`: | :c:`int wctomb(char *string, wchar_t character);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the wchar_t value of **character** into a multibyte **string**. ---- string.h --------------- Functions defined with :c:`#include `. .. _`stdlib-memchr`: | :c:`void *memchr(const void *buf, int c, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Searches the first **count** bytes of **buf** for the first occurrence of **c** converted to an unsigned character. .. _`stdlib-memcmp`: | :c:`int memcmp(const void *buf1, const void *buf2, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Compares up to **count** bytes of **buf1** and **buf2**. .. _`stdlib-memcpy`: | :c:`void *memcpy(void *dest, const void *src, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Copies **count** bytes of **src** to **dest**. .. _`stdlib-memmove`: | :c:`void *memmove(void *dest, const void *src, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Copies **count** bytes of **src** to **dest**. Allows copying between objects that overlap. .. _`stdlib-memset`: | :c:`void *memset(void *dest, int c, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Sets **count** bytes of **dest** to a value **c**. .. _`stdlib-strcat`: | :c:`char *strcat(char *string1, const char *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Concatenates **string2** to **string1**. .. _`stdlib-strchr`: | :c:`char *strchr(const char *string, int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Locates the first occurrence of **c** in **string**. .. _`stdlib-strcmp`: | :c:`int strcmp(const char *string1, const char *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Compares the value of **string1** to **string2**. .. _`stdlib-strcoll`: | :c:`int strcoll(const char *string1, const char *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Compares two strings using the collating sequence in the current locale. .. _`stdlib-strcpy`: | :c:`char *strcpy(char *string1, const char *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Copies **string2** into **string1**. .. _`stdlib-strcspn`: | :c:`size_t strcspn(const char *string1, const char *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Returns the length of the initial substring of **string1** consisting of characters not contained in **string2**. .. _`stdlib-strerror`: | :c:`char *strerror(int errnum);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Maps the error number in **errnum** to an error message string. .. _`stdlib-strlen`: | :c:`size_t strlen(const char *string);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Calculates the length of **string**. .. _`stdlib-strncat`: | :c:`char *strncat(char *string1, const char *string2, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Concatenates up to **count** characters of **string2** to **string1**. .. _`stdlib-strncmp`: | :c:`int strncmp(const char *string1, const char *string2, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Compares up to **count** characters of **string1** and **string2**. .. _`stdlib-strncpy`: | :c:`char *strncpy(char *string1, const char *string2, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Copies up to **count** characters of **string2** to **string1**. .. _`stdlib-strpbrk`: | :c:`char *strpbrk(const char *string1, const char *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Locates the first occurrence in **string1** of any character in **string2**. .. _`stdlib-strrchr`: | :c:`char *strrchr(const char *string, int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Locates the last occurrence of **c** in **string**. .. _`stdlib-strspn`: | :c:`size_t strspn(const char *string1, const char *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Returns the length of the initial substring of **string1** consisting of characters contained in **string2**. .. _`stdlib-strstr`: | :c:`char *strstr(const char *string1, const char *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Returns a pointer to the first occurrence of **string2** in **string1**. .. _`stdlib-strtok`: | :c:`char *strtok(char *string1, const char *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Locates the next token in **string1** delimited by the next character in **string2**. .. _`stdlib-strtok_r`: | :c:`char *strtok_r(char *string, const char *seps, char **lasts);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Locates the next token in **string** delimited by the next character in **seps**. (Restartable version of strtok.) .. _`stdlib-strxfrm`: | :c:`size_t strxfrm(char *string1, const char *string2, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **string2** and places the result in **string1**. The conversion is determined by the program's current locale. ---- strings.h ---------------- Functions defined with :c:`#include `. .. _`stdlib-srtcasecmp`: | :c:`int srtcasecmp(const char *string1, const char *string2);` | |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| | Compares strings without case sensitivity. .. _`stdlib-strncasecmp`: | :c:`int strncasecmp(const char *string1, const char *string2, size_t count);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Compares strings without case sensitivity. ---- time.h ------------- Functions defined with :c:`#include `. .. _`stdlib-asctime`: | :c:`char *asctime(const struct tm *time);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the **time** that is stored as a structure to a character string. .. _`stdlib-asctime_r`: | :c:`char *asctime_r (const struct tm *tm, char *buf);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts tm that is stored as a structure to a character string. (Restartable version of asctime.) .. _`stdlib-ctime`: | :c:`char *ctime(const time_t *time);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **time** to a character string. .. _`stdlib-ctime64`: | :c:`char *ctime64(const time64_t *time);` | |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| | Converts **time** to a character string. .. _`stdlib-ctime_r`: | :c:`char *ctime_r(const time_t *time, char *buf);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **time** to a character string. (Restartable version of ctime.) .. _`stdlib-ctime64_r`: | :c:`char *ctime64_r(const time64_t *time, char *buf);` | |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| | Converts **time** to a character string. (Restartable version of ctime64.) .. _`stdlib-gmtime`: | :c:`struct tm *gmtime(const time_t *time);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts a **time** value to a structure of type tm. .. _`stdlib-gmtime64`: | :c:`struct tm *gmtime64(const time64_t *time);` | |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| | Converts a **time** value to a structure of type tm. .. _`stdlib-gmtime_r`: | :c:`struct tm *gmtime_r (const time_t *time, struct tm *result);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts a time value to a structure of type tm. (Restartable version of gmtime.) .. _`stdlib-gmtime64_r`: | :c:`struct tm *gmtime64_r (const time64_t *time, struct tm *result);` | |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| | Converts a time value to a structure of type tm. (Restartable version of gmtime64.) .. _`stdlib-localtime`: | :c:`struct tm *localtime(const time_t *timeval);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts **timeval** to a structure of type tm. .. _`stdlib-localtime64`: | :c:`struct tm *localtime64(const time64_t *timeval);` | |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| | Converts **timeval** to a structure of type tm. .. _`stdlib-localtime_r`: | :c:`struct tm *localtime_r (const time_t *timeval, struct tm *result);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts a time value to a structure of type tm. (Restartable version of localtime.) .. _`stdlib-localtime64_r`: | :c:`struct tm *localtime64_r (const time64_t *timeval, struct tm *result);` | |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| | Converts a time value to a structure of type tm. (Restartable version of localtime64.) .. _`stdlib-strftime`: | :c:`size_t strftime (char *dest, size_t maxsize, const char *format, const struct tm *timeptr);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Stores characters in an array pointed to by **dest**, according to the string determined by **format**. .. _`stdlib-strptime`: | :c:`char *strptime (const char *buf, const char *format, struct tm *tm);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Date and time conversion ---- wchar.h -------------- Functions defined with :c:`#include `. | :c:`wint_t btowc(int c);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Determines whether **c** constitutes a valid multibyte character in the initial shift state. | :c:`wint_t fgetwc(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads the next multibyte character from the input stream pointed to by **stream**. | :c:`wchar_t *fgetws(wchar_t *wcs, int n, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads wide characters from the stream into the array pointed to by **wcs**. | :c:`wint_t fputwc(wchar_t wc, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the wide character **wc** to a multibyte character and writes it to the output stream pointed to by **stream** at the current position. | :c:`int fputws(const wchar_t *wcs, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the wide-character string **wcs** to a multibyte-character string and writes it to **stream** as a multibyte character string. | :c:`int fwide(FILE *stream, int mode);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Determines the orientation of the stream pointed to by **stream**. | :c:`int fwprintf(FILE *stream, const wchar_t *format, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Writes output to the stream pointed to by **stream**. | :c:`int fwscanf(FILE *stream, const wchar_t *format, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads input from the stream pointed to by **stream**. | :c:`wint_t getwc(FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads the next multibyte character from **stream**, converts it to a wide character and advances the associated file position indicator for **stream**. .. _`stdlib-getwchar`: | :c:`wint_t getwchar(void);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads the next multibyte character from stdin, converts it to a wide character, and advances the associated file position indicator for stdin. .. _`stdlib-mbrlen`: | :c:`int mbrlen (const char *s, size_t n, mbstate_t *ps);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Determines the length of a multibyte character. (Restartable version of mblen.) .. _`stdlib-mbrtowc`: | :c:`int mbrtowc (wchar_t *pwc, const char *s, size_t n, mbstate_t *ps);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Convert a multibyte character to a wide character (Restartable version of mbtowc.) .. _`stdlib-mbsinit`: | :c:`int mbsinit (const mbstate_t *ps);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Test state object ps for initial state. .. _`stdlib-mbsrtowc`: | :c:`size_t mbsrtowc (wchar_t *dst, const char **src, size_t len, mbstate_t *ps);` | |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| | Convert multibyte string to a wide character string. (Restartable version of mbstowcs.) .. _`stdlib-putwchar`: | :c:`wint_t putwchar(wchar_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the wide character **wc** to a multibyte character and writes it to stdout. .. _`stdlib-swprintf`: | :c:`int swprintf(wchar_t *wcsbuffer, size_t n, const wchar_t *format, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Formats and stores a series of wide characters and values into the wide-character buffer **wcsbuffer**. .. _`stdlib-swscanf`: | :c:`int swscanf (const wchar_t *buffer, const wchar_t *format, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads data from buffer into the locations given by arg-list. | :c:`wint_t ungetwc(wint_t wc, FILE *stream);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Pushes the wide character **wc** back onto the input stream. | :c:`int vfwprintf(FILE *stream, const wchar_t *format, *va_list arg*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Equivalent to fwprintf, except that the variable argument list is replaced by **arg**. | :c:`int vswprintf(wchar_t *wcsbuffer, size_t n, const wchar_t *format, *va_list arg*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Formats and stores a series of wide characters and values in the buffer **wcsbuffer**. | :c:`int vswscanf(const wchar_t *buffer, const wchar_t *format, *va_list arg_ptr*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads wide data from a buffer into locations given by a variable number of arguments. | :c:`int vwprintf(const wchar_t *format, *va_list arg*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Equivalent to wprintf, except that the variable argument list is replaced by **arg**. | :c:`int vwscanf(const wchar_t *format, *va_list arg_ptr*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Reads wide data from stdin into locations given by a variable number of arguments. .. _`stdlib-wcscat`: | :c:`wchar_t *wcscat(wchar_t *string1, const wchar_t *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Appends a copy of the string pointed to by **string2** to the end of the string pointed to by **string1**. .. _`stdlib-wcschr`: | :c:`wchar_t *wcschr(const wchar_t *string, wchar_t character);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Searches the wide-character string pointed to by **string** for the occurrence of **character**. .. _`stdlib-wcscmp`: | :c:`int wcscmp(const wchar_t *string1, const wchar_t *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Compares two wide-character strings, **string1** and **string2**. .. _`stdlib-wcscoll`: | :c:`int wcscoll (const wchar_t *wcs1, const wchar_t *wcs2);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Compares two wide-character strings using the collating sequence in the current locale. .. _`stdlib-wcscpy`: | :c:`wchar_t *wcscpy(wchar_t *string1, const wchar_t *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Copies the contents of **string2** (including the ending wchar_t null character) into **string1**. .. _`stdlib-wcscspn`: | :c:`size_t wcscspn(const wchar_t *string1, const wchar_t *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Determines the number of wchar_t characters in the initial segment of the string pointed to by **string1** that do not appear in the string pointed to by **string2**. .. _`stdlib-wcsftime`: | :c:`size_t wcsftime(wchar_t *wdest, size_t maxsize, const wchar_t *format, const struct tm *timeptr);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the time and date specification in the **timeptr** structure into a wide-character string. .. _`stdlib-wcslen`: | :c:`size_t wcslen(const wchar_t *string);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Computes the number of wide-characters in the string pointed to by **string**. .. _`stdlib-wcsncat`: | :c:`wchar_t *wcsncat(wchar_t *string1, const wchar_t *string2, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Appends up to **count** wide characters from **string2** to the end of **string1**, and appends a wchar_t null character to the result. .. _`stdlib-wcsncmp`: | :c:`int wcsncmp(const wchar_t *string1, const wchar_t *string2, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Compares up to **count** wide characters in **string1** to **string2**. .. _`stdlib-wcsncpy`: | :c:`wchar_t *wcsncpy(wchar_t *string1, const wchar_t *string2, size_t count);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Copies up to **count** wide characters from **string2** to **string1**. .. _`stdlib-wcspbrk`: | :c:`wchar_t *wcspbrk(const wchar_t *string1, const wchar_t *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Locates the first occurrence in the string pointed to by **string1** of any wide characters from the string pointed to by **string2**. .. _`stdlib-wcsptime`: | :c:`wchar_t *wcsptime ( const wchar_t *buf, const wchar_t *format, struct tm *tm );` | |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| |blank| | Date and time conversion. Equivalent to strptime(), except that it uses wide characters. .. _`stdlib-wcsrchr`: | :c:`wchar_t *wcsrchr(const wchar_t *string, wchar_t character);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Locates the last occurrence of **character** in the string pointed to by **string**. .. _`stdlib-wcsrtombs`: | :c:`size_t wcsrtombs (char *dst, const wchar_t **src, size_t len, mbstate_t *ps);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts wide character string to multibyte string. (Restartable version of wcstombs.) .. _`stdlib-wcsspn`: | :c:`size_t wcsspn(const wchar_t *string1, const wchar_t *string2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Computes the number of wide characters in the initial segment of the string pointed to by **string1**, which consists entirely of wide characters from the string pointed to by **string2**. .. _`stdlib-wcsstr`: | :c:`wchar_t *wcsstr(const wchar_t *wcs1, const wchar_t *wcs2);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Locates the first occurrence of **wcs2** in **wcs1**. .. _`stdlib-wcstod`: | :c:`double wcstod(const wchar_t *nptr, wchar_t **endptr);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the initial portion of the wide-character string pointed to by **nptr** to a double value. .. _`stdlib-wcstof`: | :c:`float wcstof(const wchar_t *nptr, wchar_t **endptr);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the initial portion of the wide-character string pointed to by **nptr** to a float value. .. _`stdlib-wcstok`: | :c:`wchar_t *wcstok(wchar_t *wcs1, const wchar_t *wcs2, wchar_t **ptr);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Breaks **wcs1** into a sequence of tokens, each of which is delimited by a wide character from the wide string pointed to by **wcs2**. .. _`stdlib-wcstol`: | :c:`long int wcstol(const wchar_t *nptr, wchar_t **endptr, int base);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the initial portion of the wide-character string pointed to by **nptr** to a long integer value. .. _`stdlib-wcstold`: | :c:`long double wcstold(const wchar_t *nptr, wchar_t **endptr);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the initial portion of the wide-character string pointed to by **nptr** to a long double value. .. _`stdlib-wcstoul`: | :c:`unsigned long int wcstoul(const wchar_t *nptr, wchar_t **endptr, int base);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts the initial portion of the wide-character string pointed to by **nptr** to an unsigned long integer value. .. _`stdlib-wcsxfrm`: | :c:`size_t wcsxfrm (wchar_t *wcs1, const wchar_t *wcs2, size_t n);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Transforms a wide-character string to values which represent character collating weights and places the resulting wide-character string into an array. | :c:`int wctob(wint_t wc);` | |Solaris| |glibc Linux| |macOS| |Windows UCRT| |DragonFlyBSD| |Windows MSVCRT| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Determines whether **wc** corresponds to a member of the extended character set whose multibyte character representation is a single byte when in the initial shift state. .. _`stdlib-wcswidth`: | :c:`int wcswidth(const wchar_t *pwcs, size_t n);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Determine the display width of a wide character string. .. _`stdlib-wmemchr`: | :c:`wchar_t *wmemchr(const wchar_t *s, wchar_t c, size_t n);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Locates the first occurrence of **c** in the initial **n** wide characters of the object pointed to by **s.** .. _`stdlib-wmemcmp`: | :c:`int wmemcmp(const wchar_t *s1, const wchar_t *s2, size_t n);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Compares the first **n** wide characters of the object pointed to by **s1** to the first **n** characters of the object pointed to by **s2**. .. _`stdlib-wmemcpy`: | :c:`wchar_t *wmemcpy(wchar_t *s1, const wchar_t *s2, size_t n);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Copies **n** wide characters from the object pointed to by **s2** to the object pointed to by **s1**. .. _`stdlib-wmemmove`: | :c:`wchar_t *wmemmove(wchar_t *s1, const wchar_t *s2, size_t n);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Copies **n** wide characters from the object pointed to by **s2** to the object pointed to by **s1**. .. _`stdlib-wmemset`: | :c:`wchar_t *wmemset(wchar_t *s, wchar_t c, size_t n);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Copies the value of **c** into each of the first **n** wide characters of the object pointed to by **s**. .. _`stdlib-wprintf`: | :c:`int wprintf(const wchar_t *format, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Equivalent to fwprintf with the argument stdout interposed before the arguments to wprintf. .. _`stdlib-wscanf`: | :c:`int wscanf(const wchar_t *format, *arg-list*);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Equivalent to fwscanf with the argument stdin interposed before the arguments of wscanf. ---- wctype.h --------------- Functions defined with :c:`#include `. .. _`stdlib-iswalnum`: | :c:`int iswalnum (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Checks for any alphanumeric wide character. .. _`stdlib-iswalpha`: | :c:`int iswalpha (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Checks for any alphabetic wide character. .. _`stdlib-iswblank`: | :c:`int iswblank (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Checks for any blank or tab wide character. .. _`stdlib-iswcntrl`: | :c:`int iswcntrl (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests for any control wide character. .. _`stdlib-iswdigit`: | :c:`int iswdigit (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Checks for any decimal-digit wide character. .. _`stdlib-iswgraph`: | :c:`int iswgraph (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Checks for any printing wide character except for the wide-character space. .. _`stdlib-iswlower`: | :c:`int iswlower (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Checks for any lowercase wide character. .. _`stdlib-iswprint`: | :c:`int iswprint (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Checks for any printing wide character. .. _`stdlib-iswpunct`: | :c:`int iswpunct (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Test for a wide non-alphanumeric, non-space character. .. _`stdlib-iswspace`: | :c:`int iswspace (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Checks for any wide character that corresponds to an implementation-defined set of wide characters for which iswalnum is false. .. _`stdlib-iswupper`: | :c:`int iswupper (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Checks for any uppercase wide character. .. _`stdlib-iswxdigit`: | :c:`int iswxdigit (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Checks for any hexadecimal digit character. .. _`stdlib-isxdigit`: | :c:`int isxdigit(int c);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Tests if **c** is a hexadecimal digit. .. _`stdlib-towlower`: | :c:`wint_t towlower (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts uppercase letter to lowercase letter. .. _`stdlib-towupper`: | :c:`wint_t towupper (wint_t wc);` | |Solaris| |glibc Linux| |macOS| |blank| |DragonFlyBSD| |blank| |FreeBSD| |Cygwin| |NetBSD| |Omnios| |MSYS2| |musl Linux| |Android| |OpenBSD| | Converts lowercase letter to uppercase letter.