ctype::narrow
Převede znaky typu CharType používá národní prostředí odpovídající znaky typu char v nativním znakové sady.
char narrow(
CharType ch,
char default = '\0'
) const;
const CharType* narrow(
const CharType* first,
const CharType* last,
char default,
char* dest
) const;
Parametry
ch
Znak typu Chartype používá národní prostředí má být převeden.default
Výchozí hodnota přiřazena členské funkce znaky typu CharType nemají protějškem znaky typu char.first
Ukazatel myši na první znak v rozmezí znaků, které chcete převést.last
Ukazatel znak bezprostředně následující poslední znak v rozmezí znaků, které chcete převést.dest
Const ukazatel myši na první znak typu char v cílové oblasti, který ukládá převedené rozsah znaků.
Vrácená hodnota
První členské funkce vrátí znak nativního typu char odpovídá znak parametr typu CharTypedefault Pokud je protějškem není definována.
Druhý členské funkce vrací ukazatel do cílové oblasti nativní znaky převedeny z znaky typu CharType.
Poznámky
Vrátí první členské funkce do_narrow(ch, default).The second member function returns do_narrow (first, last, default, dest).Pouze znaky základní zdroj zaručeně jedinečný obraz inverzní CharType za narrow.Pro tyto znaky základní zdroj obsahuje následující invariant: narrow ( rozšířit ( c ), 0) == c.
Příklad
// 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;
}
Požadavky
Záhlaví: <locale>
Obor názvů: std