Namensräume
Varianten
Aktionen

Standardbibliothek-Header <cwchar>

Von cppreference.com
< cpp‎ | header
 
 
Header der Standardbibliothek
Algorithmen
<algorithm>
<numeric>
Strings
<cctype>
<cstring>
<cuchar> (C++11)
<cwchar>
<cwctype>
<string_view> (C++17)
<string>
Textverarbeitung
<clocale>
<codecvt> (C++11/17/26*)
<locale>
<regex> (C++11)
<text_encoding> (C++26)   
Numerik
<cfenv> (C++11)
<cmath>
<complex>
<linalg> (C++26)
<numbers> (C++20)
<random> (C++11)
<simd> (C++26)
<valarray>
Zeit
<chrono> (C++11)
<ctime>
C Kompatibilität
<ccomplex> (C++11/17/20*)
<ciso646> (bis C++20)
<cstdalign> (C++11/17/20*)
<cstdbool> (C++11/17/20*)
<ctgmath> (C++11/17/20*)
 

Dieser Header war ursprünglich Teil der C-Standardbibliothek als <wchar.h>.

Dieser Header ist Teil der Bibliotheken für nullterminierte weite und Mehrbyte-Zeichen-Strings. Er stellt auch einige C-Style I/O-Funktionen und Konvertierungen von C-Style Datum bereit.

Inhalt

[bearbeiten] Makros

implementierungsdefinierte Nullzeigerkonstante
(macro constant) [bearbeiten]
WEOF
ein Nicht-Zeichenwert vom Typ std::wint_t, der zur Anzeige von Fehlern verwendet wird
(Makro-Konstante)
WCHAR_MIN
der kleinste gültige Wert von wchar_t
(Makro-Konstante)
WCHAR_MAX
der größte gültige Wert von wchar_t
(Makro-Konstante)

[bearbeiten] Typen

Konvertierungsinformationen, die zum Iterieren über Multibyte-Zeichenstrings benötigt werden
(Klasse) [bearbeiten]
nicht vorzeichenbehafteter Ganzzahltyp, der vom sizeof-Operator zurückgegeben wird
(typedef) [bearbeiten]
wint_t Ganzzahliger Typ, der jedes gültige breite Zeichen und mindestens einen weiteren Wert speichern kann
Typ für Kalenderzeit
(Klasse) [bearbeiten]

[bearbeiten] Funktionen

Stringmanipulation
kopiert eine breite Zeichenkette in eine andere
(Funktion) [bearbeiten]
kopiert eine bestimmte Anzahl breiter Zeichen von einer Zeichenkette in eine andere
(Funktion) [bearbeiten]
hängt eine Kopie einer breiten Zeichenkette an eine andere an
(Funktion) [bearbeiten]
hängt eine bestimmte Anzahl breiter Zeichen von einer breiten Zeichenkette an eine andere an
(Funktion) [bearbeiten]
transformiert eine breite Zeichenkette so, dass wcscmp dasselbe Ergebnis wie wcscoll liefert
(Funktion) [bearbeiten]
Stringuntersuchung
gibt die Länge einer breiten Zeichenkette zurück
(Funktion) [bearbeiten]
vergleicht zwei breite Zeichenketten
(Funktion) [bearbeiten]
vergleicht eine bestimmte Anzahl von Zeichen aus zwei breiten Zeichenketten
(Funktion) [bearbeiten]
vergleicht zwei breite Zeichenketten gemäß der aktuellen Locale
(Funktion) [bearbeiten]
findet das erste Vorkommen eines breiten Zeichens in einer breiten Zeichenkette
(Funktion) [bearbeiten]
findet das letzte Vorkommen eines breiten Zeichens in einer breiten Zeichenkette
(Funktion) [bearbeiten]
gibt die Länge des maximalen Anfangssegments zurück, das
nur von den breiten Zeichen, die in einer anderen breiten Zeichenkette gefunden wurden
(Funktion) [bearbeiten]
gibt die Länge des maximalen Anfangssegments zurück, das
nur von den breiten Zeichen, die nicht in einer anderen breiten Zeichenkette gefunden wurden
(Funktion) [bearbeiten]
findet die erste Stelle irgendeines breiten Zeichens aus einer breiten Zeichenkette in einer anderen breiten Zeichenkette
(Funktion) [bearbeiten]
findet das erste Vorkommen einer breiten Zeichenkette innerhalb einer anderen breiten Zeichenkette
(Funktion) [bearbeiten]
findet das nächste Token in einer breiten Zeichenkette
(Funktion) [bearbeiten]
Manipulation von breiten Zeichen-Arrays
kopiert eine bestimmte Anzahl breiter Zeichen zwischen zwei nicht überlappenden Arrays
(Funktion) [bearbeiten]
kopiert eine bestimmte Anzahl breiter Zeichen zwischen zwei, möglicherweise überlappenden, Arrays
(Funktion) [bearbeiten]
vergleicht eine bestimmte Anzahl breiter Zeichen aus zwei Arrays
(Funktion) [bearbeiten]
findet das erste Vorkommen eines breiten Zeichens in einem breiten Zeichen-Array
(Funktion) [bearbeiten]
kopiert das gegebene breite Zeichen in jede Position eines breiten Zeichen-Arrays
(Funktion) [bearbeiten]
Konvertierung von Mehrbyte-/weiten Zeichen
prüft, ob das std::mbstate_t-Objekt den anfänglichen Shift-Zustand repräsentiert
(Funktion) [bearbeiten]
erweitert ein ein Byte breites schmales Zeichen zu einem Wide-Zeichen, falls möglich
(Funktion) [bearbeiten]
verengt ein Wide-Zeichen zu einem ein Byte breiten schmalen Zeichen, falls möglich
(Funktion) [bearbeiten]
gibt die Anzahl der Bytes im nächsten Multibyte-Zeichen zurück, gegeben den Zustand
(Funktion) [bearbeiten]
konvertiert das nächste Multibyte-Zeichen in ein Wide-Zeichen, gegeben den Zustand
(Funktion) [bearbeiten]
konvertiert ein Wide-Zeichen in seine Multibyte-Darstellung, gegeben den Zustand
(Funktion) [bearbeiten]
konvertiert einen schmalen Multibyte-Zeichenstring in einen Wide-String, gegeben den Zustand
(Funktion) [bearbeiten]
konvertiert einen Wide-String in einen schmalen Multibyte-Zeichenstring, gegeben den Zustand
(Funktion) [bearbeiten]
Ein-/Ausgabe
liest ein Weitzeichen aus einem Dateistream
(Funktion) [bearbeiten]
liest einen Weitzeichenstring aus einem Dateistream
(Funktion) [bearbeiten]
schreibt ein Weitzeichen in einen Dateistream
(Funktion) [bearbeiten]
schreibt einen Weitzeichenstring in einen Dateistream
(Funktion) [bearbeiten]
liest ein breites Zeichen von stdin
(Funktion) [bearbeiten]
schreibt ein breites Zeichen nach stdout
(Funktion) [bearbeiten]
gibt ein Weitzeichen zurück in einen Dateistream
(Funktion) [bearbeiten]
wechselt einen Dateistream zwischen Weitzeichen-E/A und Schmalzeichen-E/A
(Funktion) [bearbeiten]
liest formatierte breite Zeichen-Eingabe von stdin, einem Dateistream oder einem Puffer
(Funktion) [bearbeiten]
(C++11)(C++11)(C++11)
liest formatierte breite Zeichen-Eingabe von stdin, einem Dateistream
oder einem Puffer mit variabler Argumentenliste
(Funktion) [bearbeiten]
druckt formatierte breite Zeichen-Ausgabe nach stdout, einem Dateistream oder einem Puffer
(Funktion) [bearbeiten]
druckt formatierte breite Zeichen-Ausgabe nach stdout, einem Dateistream
oder einem Puffer mit variabler Argumentenliste
(Funktion) [bearbeiten]
String-Konvertierungen
konvertiert ein std::tm-Objekt in eine benutzerdefinierte Textdarstellung als breites Zeichen-String
(Funktion) [bearbeiten]
wandelt eine breite Zeichenkette in einen ganzzahligen Wert um
(Funktion) [bearbeiten]
wandelt eine breite Zeichenkette in einen vorzeichenlosen ganzzahligen Wert um
(Funktion) [bearbeiten]
wandelt eine breite Zeichenkette in einen Fließkommawert um
(Funktion) [bearbeiten]

[bearbeiten] Hinweise

[bearbeiten] Synopsis

namespace std {
  using size_t =    /* see description */; // freestanding
  using mbstate_t = /* see description */; // freestanding
  using wint_t =    /* see description */; // 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);
 
  // multibyte / wide string and character conversion functions
  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      /* see description */ // freestanding
#define WCHAR_MAX /* see description */ // freestanding
#define WCHAR_MIN /* see description */ // freestanding
#define WEOF      /* see description */ // freestanding

[bearbeiten] Defect Reports

Die folgenden Verhaltensändernden Fehlerberichte wurden rückwirkend auf zuvor veröffentlichte C++-Standards angewendet.

DR angewendet auf Verhalten wie veröffentlicht Korrigiertes Verhalten
LWG 345 C++98 std::tm wurde in <cwchar> nicht bereitgestellt bereitgestellt