Číst v angličtině

Sdílet prostřednictvím


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 pomocí členské funkce znaků typu CharType nemají protějšek znaky typu char.

  • first
    Ukazatel na první znak v rozsahu znaků, které mají být převedeny.

  • last
    Ukazatel znak ihned po poslední znak v rozsahu znaků, které mají být převedeny.

  • dest
    Const ukazatel na první znak typu char v cílové oblasti, který uloží převedené rozsah znaků.

Vrácená hodnota

Vrátí první členské funkce nativního znakového typu char , který odpovídá znaku parametr typu CharTypedefault je-li protějšek není definována. 

Druhý člen funkce vrací ukazatel na cílové oblasti nativní znaků převedené z znaků typu CharType.

Poznámky

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ý inverzní obraz mít CharType pod narrow.Pro tyto znaky základní zdroj obsahuje následující invariantní: 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í:<národního prostředí>

Obor názvů: std

Viz také

Referenční dokumentace

ctype – třída