C ++ c16rtomb () - Standardna knjižnica C ++

Funkcija c16rtomb () v jeziku C ++ pretvori 16-bitno predstavitev znakov v ozko večbajtno predstavitev znakov.

Funkcija c16rtomb () je definirana v glavi datoteke.

c16rtomb () Prototip

 size_t c16rtomb (char * s, char16_t c16, mbstate_t * ps);

Funkcija c16rtomb () pretvori znak utf-16 c16 v večbajtni ekvivalent in ga shrani v predmet, na katerega kaže s.

Če s predstavlja ničelni kazalec, je klic enak c16rtomb (buf, u ' 0', ps) za nekaj notranjega medpomnilnika.

Če je c16 ničelni znak, tj. U ' 0', se shrani ničelni bajt.

c16rtomb () Parametri

  • s: Kazalec na niz znakov, v katerem naj bo shranjen večbajtni znak.
  • c16: 16-bitni znak za pretvorbo.
  • ps: Kazalec na objekt mbstate_t, ki se uporablja pri interpretaciji večbajtnega niza.

c16rtomb () Vrnjena vrednost

  • Po uspehu funkcija c16rtomb () vrne število bajtov, zapisanih v niz znakov, na katerega kaže s.
  • Ob napaki se vrne -1 in EILSEQ se shrani v errno.

Primer: Kako deluje funkcija c16rtomb ()?

 #include #include using namespace std; int main() ( const char16_t str() = u"Hello World!"; char s(50); mbstate_t ps(); size_t length; int j = 0; while (str(j)) ( length = c16rtomb(s, str(j), &ps); if ((length == 0) || (length> 50)) break; for (int i=0; i 

When you run the program, the output will be:

 Hello World!

Zanimive Članki...