]> pd.if.org Git - pdclib.old/blobdiff - man3/wchar.h.3
PDCLIB-2: Complete wchar.h + manual page. This header is a monster, implies numerous...
[pdclib.old] / man3 / wchar.h.3
diff --git a/man3/wchar.h.3 b/man3/wchar.h.3
new file mode 100644 (file)
index 0000000..0df246a
--- /dev/null
@@ -0,0 +1,254 @@
+.\" This file is part of the Public Domain C Library " "PDCLib).\r
+.\" Permission is granted to use" "modify" "and / or redistribute at will.\r
+.\"\r
+.Dd\r
+.Dt WCHAR.H 3\r
+.Os\r
+.\"\r
+.Sh NAME\r
+.Nm wchar.h\r
+.Nd wide character & wide character string manipulation\r
+.\"\r
+.Sh SYNOPSIS\r
+.In wchar.h\r
+.\"\r
+.Sh DESCRIPTION\r
+The\r
+.In wchar.h\r
+header provides functions for manipulating wide character strings" "for\r
+converting between wide characters and multibyte character sets" "for \r
+manipulating wide character strings" "and for wide character oriented input and \r
+output.\r
+.\"\r
+.Ss Types & Definitions\r
+The type\r
+.Vt size_t\r
+and macro\r
+.Dv NULL\r
+shall be defined as in\r
+.In stddef.h .\r
+.Pp\r
+The type\r
+.Vt wchar_t\r
+shall be defined as an integral type capable of representing any wide character\r
+in the implementation defined encoding. The type\r
+.Vt wint_t\r
+shall be defined as an integral type capable of representing any wide character\r
+in the implementation defined encoding" "plus the distinct value given by\r
+.Dv WEOF ,\r
+which evaluates to a constant expression of type\r
+.Vt wint_t\r
+which does not correspond to any character in the implementation defined \r
+character set. The macros \r
+.Dv WCHAR_MIN\r
+and\r
+.Dv WCHAR_MAX\r
+shall be defined as in\r
+.In stdint.h .\r
+.Pp\r
+The type\r
+.Vt mbstate_t\r
+shall be a complete non-array object type used for the storage of the state of\r
+a multibyte to wide character conversion.\r
+.Pp\r
+The type\r
+.Vt struct tm\r
+shall be defined as an incomplete type" "a full definition of wich can be found \r
+in\r
+.In time.h .\r
+.\"\r
+.Ss Wide Character String Handling Functions\r
+.Fn "wchar_t *wcscpy" "wchar_t *_PDCLIB_restrict s1" "const wchar_t *_PDCLIB_restrict s2"\r
+.br\r
+.Fn "wchar_t *wcsncpy" "wchar_t *_PDCLIB_restrict s1" "const wchar_t *_PDCLIB_restrict s2" "size_t n"\r
+.br\r
+.Fn "wchar_t *wmemcpy" "wchar_t *_PDCLIB_restrict s1" "const wchar_t *_PDCLIB_restrict s2" "size_t n"\r
+.br\r
+.Fn "wchar_t *wmemmove" "wchar_t *s1" "const wchar_t *s2" "size_t n"\r
+.br\r
+.Fn "wchar_t *wcscat" "wchar_t *_PDCLIB_restrict s1" "const wchar_t *_PDCLIB_restrict s2"\r
+.br\r
+.Fn "wchar_t *wcsncat" "wchar_t *_PDCLIB_restrict s1" "const wchar_t *_PDCLIB_restrict s2" "size_t n"\r
+.br\r
+.Fn "int wcscmp" "const wchar_t *s1" "const wchar_t *s2"\r
+.br\r
+.Fn "int wcscoll" "const wchar_t *s1" "const wchar_t *s2"\r
+.br\r
+.Fn "int wcsncmp" "const wchar_t *s1" "const wchar_t *s2" "size_t n"\r
+.br\r
+.Fn "size_t wcsxfrm" "wchar_t *_PDCLIB_restrict s1" "const wchar_t *_PDCLIB_restrict s2" "size_t n"\r
+.br\r
+.Fn "int wmemcmp" "const wchar_t *s1" "const wchar_t *s2" "size_t n"\r
+.br\r
+.Fn "wchar_t *wcschr" "const wchar_t *s" "wchar_t c"\r
+.br\r
+.Fn "size_t wcscspn" "const wchar_t *s1" "const wchar_t *s2"\r
+.br\r
+.Fn "wchar_t *wcspbrk" "const wchar_t *s1" "const wchar_t *s2"\r
+.br\r
+.Fn "wchar_t *wcsrchr" "const wchar_t *s" "wchar_t c"\r
+.br\r
+.Fn "size_t wcsspn" "const wchar_t *s1" "const wchar_t *s2"\r
+.br\r
+.Fn "wchar_t *wcsstr" "const wchar_t *s1" "const wchar_t *s2"\r
+.br\r
+.Fn "wchar_t *wcstok" "wchar_t *_PDCLIB_restrict s1" "const wchar_t *_PDCLIB_restrict s2" "wchar_t **_PDCLIB_restrict ptr"\r
+.br\r
+.Fn "wchar_t *wmemchr" "const wchar_t *s" "wchar_t c" "size_t n" \r
+.br\r
+.Fn "size_t wcslen" "const wchar_t *s"\r
+.br\r
+.Fn "wchar_t *wmemset" "wchar_t *s" "wchar_t c" "size_t n"\r
+.\"\r
+.Ss Wide Character String Formatting\r
+.Fn "int swprintf" "wchar_t *_PDCLIB_restrict s" "size_t n" "const wchar_t *_PDCLIB_restrict format" "..."\r
+.br\r
+.Fn "int swscanf" "const wchar_t *_PDCLIB_restrict s" "const wchar_t *_PDCLIB_restrict format" "..."\r
+.br\r
+.Fn "int vswprintf" "wchar_t *_PDCLIB_restrict s" "size_t n" "const wchar_t *_PDCLIB_restrict format" "va_list arg"\r
+.br\r
+.Fn "int vswscanf" "const wchar_t *_PDCLIB_restrict s" "const wchar_t *_PDCLIB_restrict format" "va_list arg"\r
+.br\r
+.Fn "size_t wcsftime" "wchar_t *_PDCLIB_restrict s" "size_t maxsize" "const wchar_t *_PDCLIB_restrict format" "const struct tm *_PDCLIB_restrict timeptr"\r
+.\"\r
+.Ss Wide Character Input and Output\r
+.Fn "int fwprintf" "FILE *_PDCLIB_restrict stream" "const wchar_t *_PDCLIB_restrict format" "..."\r
+.br\r
+.Fn "int fwscanf" "FILE *_PDCLIB_restrict stream" "const wchar_t *_PDCLIB_restrict format" "..."\r
+.br\r
+.Fn "int vfwprintf" "FILE *_PDCLIB_restrict stream" "const wchar_t *_PDCLIB_restrict format" "va_list arg"\r
+.br\r
+.Fn "int vfwscanf" "FILE *_PDCLIB_restrict stream" "const wchar_t *_PDCLIB_restrict format" "va_list arg"\r
+.br\r
+.Fn "int vwprintf" "const wchar_t *_PDCLIB_restrict format" "va_list arg"\r
+.br\r
+.Fn "int vwscanf" "const wchar_t *_PDCLIB_restrict format" "va_list arg"\r
+.br\r
+.Fn "int wprintf" "const wchar_t *_PDCLIB_restrict format" "..."\r
+.br\r
+.Fn "int wscanf" "const wchar_t *_PDCLIB_restrict format" "..."\r
+.br\r
+.Fn "wint_t fgetwc" "FILE *stream"\r
+.br\r
+.Fn "wchar_t *fgetws" "wchar_t *_PDCLIB_restrict s" "int n" "FILE *_PDCLIB_restrict stream"\r
+.br\r
+.Fn "wint_t fputwc" "wchar_t c" "FILE *stream"\r
+.br\r
+.Fn "int fputws" "const wchar_t *_PDCLIB_restrict s" "FILE *_PDCLIB_restrict stream"\r
+.br\r
+.Fn "int fwide" "FILE *stream" "int mode"\r
+.br\r
+.Fn "wint_t getwc" "FILE *stream"\r
+.br\r
+.Fn "wint_t getwchar" "void"\r
+.br\r
+.Fn "wint_t putwc" "wchar_t c" "FILE *stream"\r
+.br\r
+.Fn "wint_t putwchar" "wchar_t c"\r
+.br\r
+.Fn "wint_t ungetwc" "wint_t c" "FILE *stream"\r
+.\"\r
+.Ss Wide Character String Parsing\r
+.Fn "double wcstod" "const wchar_t *_PDCLIB_restrict nptr" "wchar_t **_PDCLIB_restrict endptr"\r
+.br\r
+.Fn "float wcstof" "const wchar_t *_PDCLIB_restrict nptr" "wchar_t **_PDCLIB_restrict endptr"\r
+.br\r
+.Fn "long double wcstold" "const wchar_t *_PDCLIB_restrict nptr" "wchar_t **_PDCLIB_restrict endptr"\r
+.br\r
+.Fn "long int wcstol" "const wchar_t *_PDCLIB_restrict nptr" "wchar_t **_PDCLIB_restrict endptr" "int base"\r
+.br\r
+.Fn "long long int wcstoll" "const wchar_t *_PDCLIB_restrict nptr" "wchar_t **_PDCLIB_restrict endptr" "int base"\r
+.br\r
+.Fn "unsigned long int wcstoul" "const wchar_t *_PDCLIB_restrict nptr" "wchar_t **_PDCLIB_restrict endptr" "int base"\r
+.br\r
+.Fn "unsigned long long int wcstoull" "const wchar_t *_PDCLIB_restrict nptr" "wchar_t **_PDCLIB_restrict endptr" "int base"\r
+.\"\r
+.Ss Character Set Conversion\r
+.Fn "wint_t btowc" "int c"\r
+.br\r
+.Fn "int wctob" "wint_t c"\r
+.br\r
+.Fn "int mbsinit" "const mbstate_t *ps"\r
+.br\r
+.Fn "size_t mbrlen" "const char *_PDCLIB_restrict s" "size_t n" "mbstate_t *_PDCLIB_restrict ps"\r
+.br\r
+.Fn "size_t mbrtowc" "wchar_t *_PDCLIB_restrict pwc" "const char *_PDCLIB_restrict s" "size_t n" "mbstate_t *_PDCLIB_restrict ps"\r
+.br\r
+.Fn "size_t wcrtomb" "char *_PDCLIB_restrict s" "wchar_t wc" "mbstate_t *_PDCLIB_restrict ps"\r
+.br\r
+.Fn "size_t mbsrtowcs" "wchar_t *_PDCLIB_restrict dst" "const char **_PDCLIB_restrict src" "size_t len" "mbstate_t *_PDCLIB_restrict ps"\r
+.br\r
+.Fn "size_t wcsrtombs" "char *_PDCLIB_restrict dst" "const wchar_t **_PDCLIB_restrict src" "size_t len" "mbstate_t *_PDCLIB_restrict ps"\r
+.\"\r
+.Sh SEE ALSO\r
+.Xr string.h 3\r
+.Xr uchar.h 3\r
+.Xr wcscpy 3\r
+.Xr wcsncpy 3\r
+.Xr wmemcpy 3\r
+.Xr wmemmove 3\r
+.Xr wcscat 3\r
+.Xr wcsncat 3\r
+.Xr wcscmp 3\r
+.Xr wcscoll 3\r
+.Xr wcsncmp 3\r
+.Xr wcsxfrm 3\r
+.Xr wmemcmp 3\r
+.Xr wcschr 3\r
+.Xr wcscspn 3\r
+.Xr wcspbrk 3\r
+.Xr wcsrchr 3\r
+.Xr wcsspn 3\r
+.Xr wcsstr 3\r
+.Xr wcstok 3\r
+.Xr wmemchr 3\r
+.Xr wcslen 3\r
+.Xr wmemset 3\r
+.\"\r
+.Xr swprintf 3\r
+.Xr swscanf 3\r
+.Xr vswprintf 3\r
+.Xr vswscanf 3\r
+.Xr wcsftime 3\r
+.\"\r
+.Xr fwprintf 3\r
+.Xr fwscanf 3\r
+.Xr vfwprintf 3\r
+.Xr vfwscanf 3\r
+.Xr vwprintf 3\r
+.Xr vwscanf 3\r
+.Xr wprintf 3\r
+.Xr wscanf 3\r
+.Xr fgetwc 3\r
+.Xr fgetws 3\r
+.Xr fputwc 3\r
+.Xr fputws 3\r
+.Xr fwide 3\r
+.Xr getwc 3\r
+.Xr getwchar 3\r
+.Xr putwc 3\r
+.Xr putwchar 3\r
+.Xr ungetwc 3\r
+.\"\r
+.Xr wcstod 3\r
+.Xr wcstof 3\r
+.Xr wcstold 3\r
+.Xr wcstol 3\r
+.Xr wcstoll 3\r
+.Xr wcstoul 3\r
+.Xr wcstoull 3\r
+.\"\r
+.Xr btowc 3\r
+.Xr wctomb 3\r
+.Xr mbsinit 3\r
+.Xr mbrlen 3\r
+.Xr mbrtowc 3\r
+.Xr wcrtomb 3\r
+.Xr mbsrtowcs 3\r
+.Xr wcsrtombs 3\r
+.\"\r
+.Sh STANDARDS\r
+Conforming to\r
+.St -isoC-amd1 ,\r
+.St -isoC-99 and\r
+.St -isoC-2011 .
\ No newline at end of file