Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Konvertiert die Zeichen des Typs CharType verwendet durch ein Gebietsschema zu den entsprechenden Zeichen des Typs char im systemeigenen Zeichensatz.
char narrow(
CharType ch,
char default = '\0'
) const;
const CharType* narrow(
const CharType* first,
const CharType* last,
char default,
char* dest
) const;
Parameter
ch
Das Zeichen des Typs Chartype wird vom Gebietsschema konvertiert werden.default
Der von der Memberfunktion zugewiesen werden, Standardwert zu Zeichen des Typs CharType, die nicht Entsprechungszeichen des Typs char haben.first
Ein Zeiger auf das erste Zeichen im Bereich von den zu konvertierenden Zeichen.last
Ein Zeiger auf Zeichen direkt hinter dem letzten Zeichen im Bereich von den zu konvertierenden Zeichen.dest
Ein const Zeiger auf das erste Zeichen des Typs char im Zielbereich, der den konvertierten Zeichenbereich speichert.
Rückgabewert
Die erste Memberfunktion gibt das systemeigene Zeichen des Typs char zurück, der dem Parameterzeichen des Typs CharTypedefault entspricht, wenn nicht äquivalent definiert ist.
Die zweite Memberfunktion gibt einen Zeiger auf den Zielbereich von systemeigenen Zeichen zurück, die aus den Zeichen des Typs CharType konvertiert werden.
Hinweise
Die erste Memberfunktion gibt do_narrow zurück (ch, default).Die zweite Memberfunktion gibt do_narrow zurück (first, last, default, dest).Nur die grundlegenden Quellzeichen werden garantiert, dass ein eindeutiges Urbild CharType unter narrow verfügen.Für diese grundlegenden Quellzeichen enthält das folgende invariante Element an: narrow ( widen ( c ), 0 ) == c.
Beispiel
// ctype_narrow.cpp
// compile with: /EHsc /W3
#include <locale>
#include <iostream>
using namespace std;
int main( )
{
locale loc1 ( "english" );
wchar_t *str1 = L"\x0392fhello everyone";
char str2 [16];
bool result1 = (use_facet<ctype<wchar_t> > ( loc1 ).narrow
( str1, str1 + wcslen(str1), 'X', &str2[0] ) != 0); // C4996
str2[wcslen(str1)] = '\0';
wcout << str1 << endl;
cout << &str2[0] << endl;
}
Anforderungen
Header: <locale>
Namespace: std