Namespaces
Variants

Standard library header <cwchar>

From cppreference.net
Standard library headers

Este encabezado estaba originalmente en la biblioteca estándar de C como <wchar.h> .

Este encabezado es parte de las bibliotecas de cadenas wide y multibyte terminadas en nulo. También proporciona algunas funciones de E/S estilo C y conversión desde Fecha estilo C .

Contenidos

Macros

constante de puntero nulo definida por la implementación
(constante macro)
WEOF
un valor no-carácter de tipo std::wint_t utilizado para indicar errores
(constante macro)
WCHAR_MIN
el valor válido más pequeño de wchar_t
(constante macro)
WCHAR_MAX
el valor válido más grande de wchar_t
(constante macro)

Tipos

información de estado de conversión necesaria para iterar cadenas de caracteres multibyte
(clase)
tipo entero sin signo devuelto por el operador sizeof
(typedef)
wint_t tipo entero que puede contener cualquier carácter ancho válido y al menos un valor adicional
tipo de tiempo calendario
(clase)

Funciones

Manipulación de cadenas
copia una cadena ancha a otra
(función)
copia una cierta cantidad de caracteres anchos de una cadena a otra
(función)
añade una copia de una cadena ancha a otra
(función)
agrega una cierta cantidad de caracteres anchos de una cadena ancha a otra
(función)
transforma una cadena ancha para que wcscmp produzca el mismo resultado que wcscoll
(función)
Examen de cadenas
devuelve la longitud de una cadena ancha
(función)
compara dos cadenas anchas
(función)
compara una cantidad determinada de caracteres de dos cadenas anchas
(función)
compara dos cadenas anchas de acuerdo a la configuración regional actual
(función)
encuentra la primera ocurrencia de un carácter ancho en una cadena ancha
(función)
encuentra la última ocurrencia de un carácter ancho en una cadena ancha
(función)
devuelve la longitud del segmento inicial máximo que consiste
únicamente de los caracteres anchos encontrados en otra cadena ancha
(función)
devuelve la longitud del segmento inicial máximo que consiste
únicamente de caracteres anchos no encontrados en otra cadena ancha
(función)
encuentra la primera ubicación de cualquier carácter ancho en una cadena ancha, en otra cadena ancha
(función)
encuentra la primera ocurrencia de una cadena ancha dentro de otra cadena ancha
(función)
encuentra el siguiente token en una cadena ancha
(función)
Manipulación de arreglos de caracteres anchos
copia una cierta cantidad de caracteres anchos entre dos arreglos que no se superponen
(función)
copia una cierta cantidad de caracteres anchos entre dos arreglos, posiblemente superpuestos
(función)
compara una cierta cantidad de caracteres anchos de dos arreglos
(función)
encuentra la primera ocurrencia de un carácter ancho en un arreglo de caracteres anchos
(función)
copia el carácter ancho dado a cada posición en un arreglo de caracteres anchos
(función)
Conversión de caracteres multibyte/ancho
verifica si el objeto std::mbstate_t representa el estado de desplazamiento inicial
(función)
amplía un carácter estrecho de un solo byte a carácter ancho, si es posible
(función)
reduce un carácter ancho a un carácter estrecho de un solo byte, si es posible
(función)
devuelve el número de bytes en el siguiente carácter multibyte, dado el estado
(función)
convierte el siguiente carácter multibyte a carácter ancho, dado el estado
(función)
convierte un carácter ancho a su representación multibyte, dado un estado
(función)
convierte una cadena de caracteres multibyte estrecha a cadena ancha, dado el estado
(función)
convierte una cadena ancha a una cadena de caracteres multibyte estrecha, dado un estado
(función)
Entrada/Salida
obtiene un carácter ancho de un flujo de archivo
(función)
obtiene una cadena ancha de un flujo de archivo
(función)
escribe un carácter ancho a un flujo de archivo
(función)
escribe una cadena ancha en un flujo de archivo
(función)
lee un carácter ancho desde stdin
(función)
escribe un carácter ancho en stdout
(función)
coloca un carácter ancho de vuelta en un flujo de archivo
(función)
cambia un flujo de archivo entre E/S de caracteres anchos y E/S de caracteres estrechos
(función)
lee entrada formateada de caracteres anchos desde stdin , un flujo de archivo o un búfer
(función)
(C++11) (C++11) (C++11)
lee entrada formateada de caracteres anchos desde stdin , un flujo de archivo
o un búfer usando una lista de argumentos variables
(función)
imprime salida de caracteres anchos formateada a stdout , un flujo de archivo o un búfer
(función)
imprime salida formateada de caracteres anchos hacia stdout , un flujo de archivo
o un búfer usando una lista de argumentos variable
(función)
Conversiones de cadenas
convierte un objeto std::tm a representación textual personalizada de cadena ancha
(función)
convierte una cadena ancha a un valor entero
(función)
convierte una cadena ancha a un valor entero sin signo
(función)
convierte una cadena ancha a un valor de punto flotante
(función)

Notas

Sinopsis

namespace std {
  using size_t =    /* ver descripción */; // freestanding
  using mbstate_t = /* ver descripción */; // freestanding
  using wint_t =    /* ver descripción */; // freestanding
  struct tm;
  int fwprintf(FILE* stream, const wchar_t* format, ...);
  int fwscanf(FILE* stream, const wchar_t* format, ...);
  int swprintf(wchar_t* s, size_t n, const wchar_t* format, ...);
  int swscanf(const wchar_t* s, const wchar_t* format, ...);
  int vfwprintf(FILE* stream, const wchar_t* format, va_list arg);
  int vfwscanf(FILE* stream, const wchar_t* format, va_list arg);
  int vswprintf(wchar_t* s, size_t n, const wchar_t* format, va_list arg);
  int vswscanf(const wchar_t* s, const wchar_t* format, va_list arg);
  int vwprintf(const wchar_t* format, va_list arg);
  int vwscanf(const wchar_t* format, va_list arg);
  int wprintf(const wchar_t* format, ...);
  int wscanf(const wchar_t* format, ...);
  wint_t fgetwc(FILE* stream);
  wchar_t* fgetws(wchar_t* s, int n, FILE* stream);
  wint_t fputwc(wchar_t c, FILE* stream);
  int fputws(const wchar_t* s, FILE* stream);
  int fwide(FILE* stream, int mode);
  wint_t getwc(FILE* stream);
  wint_t getwchar();
  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* nptr, wchar_t** endptr);
  float wcstof(const wchar_t* nptr, wchar_t** endptr);
  long double wcstold(const wchar_t* nptr, wchar_t** endptr);
  long int wcstol(const wchar_t* nptr, wchar_t** endptr, int base);
  long long int wcstoll(const wchar_t* nptr, wchar_t** endptr, int base);
  unsigned long int wcstoul(const wchar_t* nptr, wchar_t** endptr, int base);
  unsigned long long int wcstoull(const wchar_t* nptr, wchar_t** endptr, int base);
  wchar_t* wcscpy(wchar_t* s1, const wchar_t* s2);                // freestanding
  wchar_t* wcsncpy(wchar_t* s1, const wchar_t* s2, size_t n);     // freestanding
  wchar_t* wmemcpy(wchar_t* s1, const wchar_t* s2, size_t n);     // freestanding
  wchar_t* wmemmove(wchar_t* s1, const wchar_t* s2, size_t n);    // freestanding
  wchar_t* wcscat(wchar_t* s1, const wchar_t* s2);                // freestanding
  wchar_t* wcsncat(wchar_t* s1, const wchar_t* s2, size_t n);     // freestanding
  int wcscmp(const wchar_t* s1, const wchar_t* s2);               // freestanding
  int wcscoll(const wchar_t* s1, const wchar_t* s2);
  int wcsncmp(const wchar_t* s1, const wchar_t* s2, size_t n);    // freestanding
  size_t wcsxfrm(wchar_t* s1, const wchar_t* s2, size_t n);
  int wmemcmp(const wchar_t* s1, const wchar_t* s2, size_t n);    // freestanding
  const wchar_t* wcschr(const wchar_t* s, wchar_t c);             // freestanding
  wchar_t* wcschr(wchar_t* s, wchar_t c);                         // freestanding
  size_t wcscspn(const wchar_t* s1, const wchar_t* s2);           // freestanding
  const wchar_t* wcspbrk(const wchar_t* s1, const wchar_t* s2);   // freestanding
  wchar_t* wcspbrk(wchar_t* s1, const wchar_t* s2);               // freestanding
  const wchar_t* wcsrchr(const wchar_t* s, wchar_t c);            // freestanding
  wchar_t* wcsrchr(wchar_t* s, wchar_t c);                        // freestanding
  size_t wcsspn(const wchar_t* s1, const wchar_t* s2);            // freestanding
  const wchar_t* wcsstr(const wchar_t* s1, const wchar_t* s2);    // freestanding
  wchar_t* wcsstr(wchar_t* s1, const wchar_t* s2);                // freestanding
  wchar_t* wcstok(wchar_t* s1, const wchar_t* s2, wchar_t** ptr); // freestanding
  const wchar_t* wmemchr(const wchar_t* s, wchar_t c, size_t n);  // freestanding
  wchar_t* wmemchr(wchar_t* s, wchar_t c, size_t n);              // freestanding
  size_t wcslen(const wchar_t* s);                                // freestanding
  wchar_t* wmemset(wchar_t* s, wchar_t c, size_t n);              // freestanding
  size_t wcsftime(wchar_t* s, size_t maxsize, const wchar_t* format, const tm* timeptr);
  wint_t btowc(int c);
  int wctob(wint_t c);
  // funciones de conversión de cadenas y caracteres multibyte/wide
  int mbsinit(const mbstate_t* ps);
  size_t mbrlen(const char* s, size_t n, mbstate_t* ps);
  size_t mbrtowc(wchar_t* pwc, const char* s, size_t n, mbstate_t* ps);
  size_t wcrtomb(char* s, wchar_t wc, mbstate_t* ps);
  size_t mbsrtowcs(wchar_t* dst, const char** src, size_t len, mbstate_t* ps);
  size_t wcsrtombs(char* dst, const wchar_t** src, size_t len, mbstate_t* ps);
}
#define NULL      /* ver descripción */ // freestanding
#define WCHAR_MAX /* ver descripción */ // freestanding
#define WCHAR_MIN /* ver descripción */ // freestanding
#define WEOF      /* ver descripción */ // freestanding

Informes de defectos

Los siguientes informes de defectos que modifican el comportamiento se aplicaron retroactivamente a los estándares de C++ publicados anteriormente.

DR Aplicado a Comportamiento publicado Comportamiento correcto
LWG 345 C++98 std::tm no estaba proporcionado en <cwchar> proporcionado