btowc
Von cppreference.com
| Definiert in Header <wchar.h> |
||
| wint_t btowc( int c ); |
(seit C95) | |
Wandelt ein Einzelbytezeichen c (neu interpretiert als unsigned char) in sein Wide-Character-Äquivalent um.
Die meisten Multibyte-Zeichenkodierungen verwenden Ein-Byte-Codes zur Darstellung von Zeichen aus dem ASCII-Zeichensatz. Diese Funktion kann verwendet werden, um solche Zeichen in wchar_t zu konvertieren.
Inhalt |
[bearbeiten] Parameter
| c | - | Zu weitendes Einzelbytezeichen |
[bearbeiten] Rückgabewert
WEOF, wenn c EOF ist
Wide-Character-Repräsentation von c, wenn (unsigned char)c ein gültiges Einzelbytezeichen im anfänglichen Shift-Zustand ist, andernfalls WEOF.
[bearbeiten] Beispiel
Führen Sie diesen Code aus
#include <stdio.h> #include <wchar.h> #include <locale.h> #include <assert.h> void try_widen(unsigned char c) { wint_t w = btowc(c); if(w != WEOF) printf("The single-byte character %#x widens to %#x\n", c, w); else printf("The single-byte character %#x failed to widen\n", c); } int main(void) { char *loc = setlocale(LC_ALL, "lt_LT.iso88594"); assert(loc); printf("In Lithuanian ISO-8859-4 locale:\n"); try_widen('A'); try_widen('\xdf'); // German letter ß (U+00df) in ISO-8859-4 try_widen('\xf9'); // Lithuanian letter ų (U+0173) in ISO-8859-4 setlocale(LC_ALL, "lt_LT.utf8"); printf("In Lithuanian UTF-8 locale:\n"); try_widen('A'); try_widen('\xdf'); try_widen('\xf9'); }
Mögliche Ausgabe
In Lithuanian ISO-8859-4 locale: The single-byte character 0x41 widens to 0x41 The single-byte character 0xdf widens to 0xdf The single-byte character 0xf9 widens to 0x173 In Lithuanian UTF-8 locale: The single-byte character 0x41 widens to 0x41 The single-byte character 0xdf failed to widen The single-byte character 0xf9 failed to widen
[bearbeiten] Referenzen
- C11-Standard (ISO/IEC 9899:2011)
- 7.29.6.1.1 Die Funktion btowc (S. 441)
- C99-Standard (ISO/IEC 9899:1999)
- 7.24.6.1.1 Die Funktion btowc (S. 387)
[bearbeiten] Siehe auch
| (C95) |
verengt ein Wide-Zeichen zu einem ein Byte breiten schmalen Zeichen, falls möglich (Funktion) |
| C++ Dokumentation für btowc
| |