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

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

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

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

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

Функција мбтовц () узима три аргумента и враћа целу вредност. Ова функција претвара вишебајтни знак на који указује пмб у широки знак (вредност типа вцхар_т) и чува се на меморијској локацији на коју указује пвц.

Ако је пмб нулти показивач, позив мбтовц () ресетоваће глобално стање конверзије и одређује да ли се користе секвенце померања.

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

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

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

Ако пмб није нулл показивач, мбтовц () враћа:

  • број бајтова који се налазе у вишебајтном знаку на који указује пмб.
  • -1 ако први бајт на који указује пмб не формира важећи вишебајтни знак.
  • 0 ако пмб показује на завршавајући нулл знак тј. 0.

Ако је пмб нулл показивач, ресетује своје унутрашње стање конверзије да представља почетно стање померања и враћа:

  • 0 ако тренутно вишебајтно кодирање не зависи од стања (не користи секвенце померања)
  • вредност која није нула ако је тренутно вишебајтно кодирање зависно од стања (користи секвенце померања).

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

 #include #include #include using namespace std; int main() ( char pmb() = "Welcome to Programiz.com"; wchar_t pwc(100); int len, ret_val; /* resets internal conversion state */ mbtowc (NULL, NULL, 0); len = strlen(pmb); ret_val = mbtowc(pwc, pmb, strlen(pmb)); cout << "Return Value = " << ret_val << endl; wcout << "Wide character string: " << pwc; return(0); )

Када покренете програм, могући излаз ће бити:

 Повратна вредност = 1 Широки низ знакова: В @

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