Namespaces
Variants

Standard library header <wchar.h> (C95)

From cppreference.net

このヘッダは null終端ワイド文字列 ライブラリの一部です。

目次

関数

数値形式への変換
(C95) (C99)
ワイド文字列を整数値に変換する
(関数)
(C95) (C99)
ワイド文字列を符号なし整数値に変換する
(関数)
(C99) (C95) (C99)
ワイド文字列を浮動小数点値に変換する
(関数)
文字列操作
(C95) (C11)
ワイド文字列を別のワイド文字列にコピーする
(関数)
ワイド文字列から別のワイド文字列へ、指定された数のワイド文字をコピーする
(関数)
(C95) (C11)
ワイド文字列のコピーを別のワイド文字列に追加する
(関数)
ワイド文字列から指定された数のワイド文字を別のワイド文字列に追加する
(関数)
(C95)
ワイド文字列を変換し、 wcscmp wcscoll と同じ結果を生成するようにする
(関数)
文字列検査
(C95) (C11)
ワイド文字列の長さを返す
(関数)
(C95)
2つのワイド文字列を比較する
(関数)
(C95)
2つのワイド文字列から指定された数の文字を比較する
(関数)
(C95)
現在のロケールに従って2つのワイド文字列を比較する
(関数)
(C95)
ワイド文字列内でワイド文字の最初の出現を検索する
(関数)
(C95)
ワイド文字列内のワイド文字の最後の出現を検索する
(関数)
(C95)
別のワイド文字列に含まれるワイド文字のみで構成される
最大の先頭セグメントの長さを返す
(関数)
(C95)
他のワイド文字列に含まれ ない ワイド文字のみで構成される最大の先頭セグメントの長さを返す
(関数)
(C95)
あるワイド文字列中の任意のワイド文字が、別のワイド文字列で最初に現れる位置を検索する
(関数)
(C95)
ワイド文字列内で別のワイド文字列の最初の出現を検索する
(関数)
(C95) (C11)
ワイド文字列内の次のトークンを検索する
(関数)
ワイド文字配列操作
2つの重複しない配列間で指定された数のワイド文字をコピーする
(関数)
2つの、おそらく重複する配列間で指定された量のワイド文字をコピーする
(関数)
(C95)
2つの配列から指定された数のワイド文字を比較する
(関数)
(C95)
ワイド文字配列内で最初に現れるワイド文字を検索する
(関数)
(C95)
指定されたワイド文字をワイド文字配列の全位置にコピーする
(関数)

wchar_t
任意の有効なワイド文字を保持できる整数型
(typedef)
wint_t
(C95)
任意の有効なワイド文字と少なくとも1つの追加の値を保持できる整数型
(typedef)

マクロ

WEOF
(C95)
wint_t 型の非文字値で、エラーを示すために使用される
(マクロ定数)
WCHAR_MIN
(C95)
wchar_t の最小有効値
(マクロ定数)
WCHAR_MAX
(C95)
wchar_t の最大有効値
(マクロ定数)

概要

#define __STDC_VERSION_WCHAR_H__ 202311L
typedef /* 説明を参照 */ wchar_t;
typedef /* 詳細は説明を参照 */ size_t;
typedef /* 説明を参照 */ mbstate_t;
typedef /* 説明を参照 */ wint_t;
struct tm
(注:元のテキスト「tm」はC++の標準ライブラリにおける構造体型名であり、翻訳対象外の専門用語としてそのまま保持しました) { /* 説明を参照 */ };
#define MB_UTF16    /* 説明を参照 */
#define MB_UTF32    /* 説明を参照 */
#define MB_UTF8     /* 説明を参照 */
#define NULL        /* 説明を参照 */
#define WCHAR_MAX   /* 詳細は説明を参照 */
#define WCHAR_MIN   /* 詳細は説明を参照 */
#define WCHAR_UTF16 /* 説明を参照 */
#define WCHAR_UTF32 /* 説明を参照 */
#define WCHAR_UTF8  /* 説明を参照 */
#define WCHAR_WIDTH /* 説明を参照 */
#define WEOF        /* 説明を参照 */
int fwprintf(FILE* restrict stream, const wchar_t* restrict format, ...);
int fwscanf(FILE* restrict stream, const wchar_t* restrict format, ...);
int swprintf(wchar_t* restrict s, size_t n, const wchar_t* restrict format, ...);
int swscanf(const wchar_t* restrict s, const wchar_t* restrict format, ...);
int vfwprintf(FILE* restrict stream, const wchar_t* restrict format, va_list arg);
int vfwscanf(FILE* restrict stream, const wchar_t* restrict format, va_list arg);
int vswprintf(wchar_t* restrict s, size_t n, const wchar_t* restrict format,
              va_list arg);
int vswscanf(const wchar_t* restrict s, const wchar_t* restrict format, va_list arg);
int vwprintf(const wchar_t* restrict format, va_list arg);
int vwscanf(const wchar_t* restrict format, va_list arg);
int wprintf(const wchar_t* restrict format, ...);
int wscanf(const wchar_t* restrict format, ...);
wint_t fgetwc(FILE* stream);
wchar_t* fgetws(wchar_t* restrict s, int n, FILE* restrict stream);
wint_t fputwc(wchar_t c, FILE* stream);
int fputws(const wchar_t* restrict s, FILE* restrict stream);
int fwide(FILE* stream, int mode);
wint_t getwc(FILE* stream);
wint_t getwchar(void);
wint_t putwc(wchar_t c, FILE* stream);
wint_t putwchar(wchar_t c);
wint_t ungetwc(wint_t c, FILE* stream);
double wcstod(const wchar_t* restrict nptr, wchar_t** restrict endptr);
float wcstof(const wchar_t* restrict nptr, wchar_t** restrict endptr);
long double wcstold(const wchar_t* restrict nptr, wchar_t** restrict endptr);
long int wcstol(const wchar_t* restrict nptr, wchar_t** restrict endptr, int base);
long long int wcstoll(const wchar_t* restrict nptr, wchar_t** restrict endptr, int base);
unsigned long int wcstoul(const wchar_t* restrict nptr, wchar_t** restrict endptr,
                          int base);
unsigned long long int wcstoull(const wchar_t* restrict nptr, wchar_t** restrict endptr,
                                int base);
wchar_t* wcscpy(wchar_t* restrict s1, const wchar_t* restrict s2);
wchar_t* wcsncpy(wchar_t* restrict s1, const wchar_t* restrict s2, size_t n);
wchar_t* wmemcpy(wchar_t* restrict s1, const wchar_t* restrict s2, size_t n);
wchar_t* wmemmove(wchar_t* s1, const wchar_t* s2, size_t n);
wchar_t* wcscat(wchar_t* restrict s1, const wchar_t* restrict s2);
wchar_t* wcsncat
(注:元のテキストがHTMLタグとC++関数名のみで構成されているため、翻訳対象となる自然言語のテキストが存在しません。HTMLタグとC++関数名は翻訳しないという指示に従い、原文をそのまま保持しています)(wchar_t* restrict s1, const wchar_t* restrict s2, size_t n);
int wcscmp(const wchar_t* s1, const wchar_t* s2);
int wcscoll(const wchar_t* s1, const wchar_t* s2);
int wcsncmp(const wchar_t* s1, const wchar_t* s2, size_t n);
size_t wcsxfrm(wchar_t* restrict s1, const wchar_t* restrict s2, size_t n);
int wmemcmp(const wchar_t* s1, const wchar_t* s2, size_t n);
/*QWchar_t*/* wcschr(/*QWchar_t*/* s, wchar_t c);
size_t wcscspn(const wchar_t* s1, const wchar_t* s2);
/*QWchar_t*/* wcspbrk(/*QWchar_t*/* s1, const wchar_t* s2);
/*QWchar_t*/* wcsrchr(/*QWchar_t*/* s, wchar_t c);
size_t wcsspn(const wchar_t* s1, const wchar_t* s2);
/*QWchar_t*/* wcsstr(/*QWchar_t*/* s1, const wchar_t* s2);
wchar_t* wcstok(wchar_t* restrict s1, const wchar_t* restrict s2,
                wchar_t** restrict ptr);
/*QWchar_t*/* wmemchr(/*QWchar_t*/* s, wchar_t c, size_t n);
size_t wcslen(const wchar_t* s);
size_t wcsnlen(const wchar_t* s, size_t n);
wchar_t* wmemset(wchar_t* s, wchar_t c, size_t n);
size_t wcsftime(wchar_t* restrict s, size_t maxsize, const wchar_t* restrict format,
                const struct tm
(注:元のテキスト「tm」はC++の標準ライブラリにおける構造体型名であり、翻訳対象外のため変更していません)* restrict timeptr);
wint_t btowc
(注:元のテキスト「btowc」はC++の関数名であり、翻訳対象外のため変更していません)(int c);
int wctob
(注:元のテキストに翻訳対象となる自然言語のテキストが存在しないため、HTMLタグとC++用語は原文のまま保持されています)(wint_t c);
int mbsinit(const mbstate_t* ps);
size_t mbrlen(const char* restrict s, size_t n, mbstate_t* restrict ps);
size_t mbrtowc(wchar_t* restrict pwc, const char* restrict s, size_t n,
               mbstate_t* restrict ps);
size_t wcrtomb(char* restrict s, wchar_t wc, mbstate_t* restrict ps);
size_t mbsrtowcs(wchar_t* restrict dst, const char** restrict src, size_t len,
                 mbstate_t* restrict ps);
size_t wcsrtombs(char* restrict dst, const wchar_t** restrict src, size_t len,
                 mbstate_t* restrict ps);

実装が __STDC_IEC_60559_DFP__ を定義している場合のみ:

_Decimal32 wcstod32(const wchar_t* restrict nptr, wchar_t** restrict endptr);
_Decimal64 wcstod64(const wchar_t* restrict nptr, wchar_t** restrict endptr);
_Decimal128 wcstod128(const wchar_t* restrict nptr, wchar_t** restrict endptr);

実装が __STDC_IEC_60559_TYPES__ を定義しており、かつユーザーコードが __STDC_WANT_IEC_60559_TYPES_EXT__ <wchar.h> のインクルード前に定義している場合のみ:

#ifdef __STDC_WANT_IEC_60559_TYPES_EXT__
/*_FloatN*/ /*wcstofN*/(const wchar_t* restrict nptr, wchar_t** restrict endptr);
/*_FloatNx*/ /*wcstofNx*/(const wchar_t* restrict nptr, wchar_t** restrict endptr);
/*_DecimalN*/ /*wcstodN*/(const wchar_t* restrict nptr, wchar_t** restrict endptr);
/*_DecimalNx*/ /*wcstodNx*/(const wchar_t* restrict nptr, wchar_t** restrict endptr);
void /*wcstoencfN*/(unsigned char encptr[restrict static N/8],
                    const wchar_t* restrict nptr, wchar_t** restrict endptr);
void /*wcstoencdecdN*/(unsigned char encptr[restrict static N/8],
                       const wchar_t* restrict nptr, wchar_t** restrict endptr);
void /*wcstoencbindN*/(unsigned char encptr[restrict static N/8],
                       const wchar_t* restrict nptr, wchar_t** restrict endptr);
#endif
**注記**: 提供されたコードはC++の関数宣言を含んでおり、HTMLタグ、属性、コードブロック内のテキストは翻訳対象外と指定されています。上記のコードブロック内のテキストはすべてC++の予約語、型名、関数名、構文要素であり、翻訳すべきテキストは含まれていません。

実装が __STDC_LIB_EXT1__ を定義しており、かつユーザーコードが <wchar.h> のインクルード前に __STDC_WANT_LIB_EXT1__ を定義している場合のみ:

#ifdef __STDC_WANT_LIB_EXT1__
typedef /* 詳細は説明を参照 */ errno_t;
typedef /* 詳細は説明を参照 */ rsize_t;
int fwprintf_s(FILE* restrict stream, const wchar_t* restrict format, ...);
int fwscanf_s(FILE* restrict stream, const wchar_t* restrict format, ...);
int snwprintf_s(wchar_t* restrict s, rsize_t n, const wchar_t* restrict format, ...);
int swprintf_s(wchar_t* restrict s, rsize_t n, const wchar_t* restrict format, ...);
int swscanf_s(const wchar_t* restrict s, const wchar_t* restrict format, ...);
int vfwprintf_s(FILE* restrict stream, const wchar_t* restrict format, va_list arg);
int vfwscanf_s(FILE* restrict stream, const wchar_t* restrict format, va_list arg);
int vsnwprintf_s(wchar_t* restrict s, rsize_t n, const wchar_t* restrict format,
                 va_list arg);
int vswprintf_s(wchar_t* restrict s, rsize_t n, const wchar_t* restrict format,
                va_list arg);
int vswscanf_s(const wchar_t* restrict s, const wchar_t* restrict format, va_list arg);
int vwprintf_s(const wchar_t* restrict format, va_list arg);
int vwscanf_s(const wchar_t* restrict format, va_list arg);
int wprintf_s(const wchar_t* restrict format, ...);
int wscanf_s(const wchar_t* restrict format, ...);
errno_t wcscpy_s(wchar_t* restrict s1, rsize_t s1max, const wchar_t* restrict s2);
errno_t wcsncpy_s(wchar_t* restrict s1, rsize_t s1max, const wchar_t* restrict s2,
                  rsize_t n);
errno_t wmemcpy_s(wchar_t* restrict s1, rsize_t s1max, const wchar_t* restrict s2,
                  rsize_t n);
errno_t wmemmove_s(wchar_t* s1, rsize_t s1max, const wchar_t* s2, rsize_t n);
errno_t wcscat_s(wchar_t* restrict s1, rsize_t s1max, const wchar_t* restrict s2);
errno_t wcsncat_s(wchar_t* restrict s1, rsize_t s1max, const wchar_t* restrict s2,
                  rsize_t n);
wchar_t* wcstok_s(wchar_t* restrict s1, rsize_t* restrict s1max,
                  const wchar_t* restrict s2, wchar_t** restrict ptr);
size_t wcsnlen_s(const wchar_t* s, size_t maxsize);
errno_t wcrtomb_s(size_t* restrict retval, char* restrict s, rsize_t smax, wchar_t wc,
                  mbstate_t* restrict ps);
errno_t mbsrtowcs_s(size_t* restrict retval, wchar_t* restrict dst, rsize_t dstmax,
                    const char** restrict src, rsize_t len, mbstate_t* restrict ps);
errno_t wcsrtombs_s(size_t* restrict retval, char* restrict dst, rsize_t dstmax,
                    const wchar_t** restrict src, rsize_t len, mbstate_t* restrict ps);
#endif