ctype::widen
Преобразует символ типа char в собственном символа - наборе к соответствующему символу типа CharType языковым стандартом, используемому.
CharType widen(
char byte
) const;
const char *widen(
const char* first,
const char* last,
CharType* dest
) const;
Параметры
byte
Символ типа char в собственном кодировки необходимо преобразовать.first
Указатель к первому символу в диапазоне символов для преобразования.last
Указатель на символ непосредственно после последнего символа в диапазоне символов для преобразования.dest
Указатель на первый символ типа CharType в диапазоне назначения, которое содержит преобразованное диапазон символов.
Возвращаемое значение
Функция-член возвращает первый символ типа CharType, который соответствует знаку параметра собственного типа char.
Второй функцию-член возвращает указатель на целевой диапазон символов, типа CharType языковым стандартом, используемых преобразовать из собственных типов char символов.
Заметки
Первый функцию-член возвращает do_widen(byte).Второй функцию-член возвращает do_widen(first, last, dest).
Пример
// ctype_widen.cpp
// compile with: /EHsc /W3
#include <locale>
#include <iostream>
using namespace std;
int main( )
{
locale loc1 ( "English" );
char *str1 = "Hello everyone!";
wchar_t str2 [16];
bool result1 = (use_facet<ctype<wchar_t> > ( loc1 ).widen
( str1, str1 + strlen(str1), &str2[0] ) != 0); // C4996
str2[strlen(str1)] = '\0';
cout << str1 << endl;
wcout << &str2[0] << endl;
ctype<wchar_t>::char_type charT;
charT = use_facet<ctype<char> > ( loc1 ).widen( 'a' );
}
Требования
заголовок: <locale>
std пространство имен: