Ц ++ вцртомб () - Ц ++ стандардна библиотека

Функција вцртомб () у језику Ц ++ претвара широки карактер у свој уски вишебајтни приказ.

Вцртомб () је дефинисан у датотеци заглавља.

прототип вцртомб ()

 сизе_т вцртомб (цхар * с, вцхар_т вц, мбстате_т * пс);

Функција вцртомб () претвара широки знак представљен вц у уски вишебајтни знак и чува се на адреси на коју показује с.

  • Ако с није нулл показивач, функција вцртомб () одређује максималан број бајтова потребних за чување вишбајтног приказа вц-а и чува га на меморијској локацији на коју указује с. Може бити записано највише МБ_ЦУР_МАКС бајтова. Вредност пс се ажурира према потреби.
  • Ако је с нулл показивач, позив је еквивалентан wcrtomb(buf, L'', ps)за неки интерни буффер буфф.
  • Ако wc == L''је сачуван нулти бајт.

вцртомб () параметри

  • с: Показивач на вишебајтни низ знакова за чување резултата.
  • вц: Широки карактер за претварање.
  • пс: Показивач на стање конверзије које се користи приликом тумачења вишебајтног низа

вцртомб () Повратна вредност

  • У успеху, функција вцртомб () враћа број бајтова записаних у низ знакова на чији је први елемент указано с.
  • У случају неуспеха (тј. Вц није важећи широки знак), враћа -1, еррно је постављено на ЕИЛСЕК и оставља * пс у неодређеном стању.

Пример: Како функционише функција вцртомб ()?

 #include #include #include using namespace std; int main() ( setlocale(LC_ALL, "en_US.utf8"); wchar_t str() = L"uu00c6u00f5u01b5"; char s(16); int retVal; mbstate_t ps = mbstate_t(); for (int i=0; i 

When you run the program, the output will be:

 Size of u is 1 bytes Size of Æ is 2 bytes Size of õ is 2 bytes Size of Ƶ is 2 bytes

Занимљиви Чланци...