wchar.h (3747B)
1 #ifndef _WCHAR_H 2 #define _WCHAR_H 3 4 #define _NEED_NULL 5 #define _NEED_SIZET 6 #define _NEED_WCHART 7 #define _NEED_WEOF 8 #define _NEED_WCHARLIM 9 #define _NEED_WINT 10 #include <arch/cdefs.h> 11 #include <sys/cdefs.h> 12 #include <bits/wchar.h> 13 14 typedef __mbstate_t mbstate_t; 15 16 struct tm; 17 struct _FILE; 18 19 int vswscanf(const wchar_t *restrict, const wchar_t *restrict, __va_list); 20 int vwprintf(const wchar_t *restrict, __va_list); 21 int vwscanf(const wchar_t *restrict, __va_list); 22 23 int fwprintf(struct _FILE *restrict, const wchar_t *restrict, ...); 24 int fwscanf(struct _FILE *restrict, const wchar_t *restrict, ...); 25 26 int vfwprintf(struct _FILE *restrict, const wchar_t *restrict, __va_list); 27 int vfwscanf(struct _FILE *restrict, const wchar_t *restrict, __va_list); 28 int vswprintf(wchar_t *restrict, size_t, const wchar_t *restrict, __va_list); 29 30 wint_t fgetwc(struct _FILE *); 31 wint_t fputwc(wchar_t, struct _FILE *); 32 wint_t getwc(struct _FILE *); 33 wint_t putwc(wchar_t, struct _FILE *); 34 wint_t getwchar(void); 35 wint_t putwchar(wchar_t); 36 wint_t ungetwc(wint_t, struct _FILE *); 37 38 int fwide(struct _FILE *, int); 39 wchar_t *fgetws(wchar_t *restrict, int, struct _FILE *restrict); 40 int fputws(const wchar_t *restrict, struct _FILE *restrict); 41 42 int swprintf(wchar_t *restrict, size_t, const wchar_t *restrict, ...); 43 int swscanf(const wchar_t *restrict, const wchar_t *restrict, ...); 44 int wprintf(const wchar_t *restrict, ...); 45 int wscanf(const wchar_t *restrict, ...); 46 47 double wcstod(const wchar_t *restrict, wchar_t **restrict); 48 float wcstof(const wchar_t *restrict, wchar_t **restrict); 49 long double wcstold(const wchar_t *restrict, wchar_t **restrict); 50 51 long int wcstol(const wchar_t *restrict, wchar_t **restrict, int); 52 long long int wcstoll(const wchar_t *restrict, wchar_t **restrict, int); 53 unsigned long int wcstoul(const wchar_t *restrict, wchar_t **restrict, int); 54 unsigned long long int wcstoull(const wchar_t *restrict, wchar_t **restrict, int); 55 56 wchar_t *wcscpy(wchar_t *restrict, const wchar_t *restrict); 57 wchar_t *wcsncpy(wchar_t *restrict, const wchar_t *restrict, size_t); 58 59 wchar_t *wmemcpy(wchar_t *restrict, const wchar_t *restrict, size_t); 60 wchar_t *wmemmove(wchar_t *, const wchar_t *, size_t); 61 wchar_t *wmemset(wchar_t *, wchar_t, size_t); 62 wchar_t *wmemchr(const wchar_t *, wchar_t, size_t); 63 int wmemcmp(const wchar_t *, const wchar_t *, size_t); 64 65 size_t wcslen(const wchar_t *); 66 int wcscmp(const wchar_t *, const wchar_t *); 67 wchar_t *wcscat(wchar_t *restrict, const wchar_t *restrict); 68 wchar_t *wcsncat(wchar_t *restrict, const wchar_t *restrict, size_t); 69 int wcscoll(const wchar_t *, const wchar_t *); 70 int wcsncmp(const wchar_t *, const wchar_t *, size_t); 71 size_t wcsxfrm(wchar_t *restrict, const wchar_t *restrict, size_t); 72 wchar_t *wcschr(const wchar_t *, wchar_t); 73 size_t wcscspn(const wchar_t *, const wchar_t *); 74 wchar_t *wcspbrk(const wchar_t *, const wchar_t *); 75 wchar_t *wcsrchr(const wchar_t *, wchar_t); 76 size_t wcsspn(const wchar_t *, const wchar_t *); 77 wchar_t *wcsstr(const wchar_t *, const wchar_t *); 78 wchar_t *wcstok(wchar_t *restrict, const wchar_t *restrict, wchar_t **restrict); 79 80 size_t wcsftime(wchar_t *restrict, size_t, const wchar_t *restrict, const struct tm *restrict); 81 wint_t btowc(int); 82 int wctob(wint_t); 83 84 int mbsinit(const mbstate_t *); 85 size_t mbrlen(const char *restrict, size_t, mbstate_t *restrict); 86 size_t mbrtowc(wchar_t *restrict, const char *restrict, size_t, mbstate_t *restrict); 87 size_t wcrtomb(char *restrict, wchar_t, mbstate_t *restrict); 88 size_t mbsrtowcs(wchar_t *restrict, const char **restrict, size_t, mbstate_t *restrict); 89 size_t wcsrtombs(char *restrict, const wchar_t **restrict, size_t, mbstate_t *restrict); 90 int wcwidth(wchar_t); 91 92 #define putwc(wc, fp) fputwc(wc, fp) 93 #define getwc(fp) fgetwc(fp) 94 95 #endif