C ++ c16rtomb () - C ++ Standardbibliotek

Funktionen c16rtomb () i C ++ konverterar 16 bitars teckenrepresentation till en smal multibyte-representation.

Funktionen c16rtomb () definieras i rubrikfilen.

c16rtomb () Prototyp

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

Funktionen c16rtomb () omvandlar utf-16-tecknet c16 till dess multibytekvivalent och lagrar det i det objekt som pekas på av s.

Om s representerar en nollpekare är samtalet ekvivalent med c16rtomb (buf, u ' 0', ps) för viss intern buffert-buf.

Om c16 är det breda nulltecknet, dvs u ' 0', lagras en nullbyte.

c16rtomb () Parametrar

  • s: Pekare till ett teckenarray där multibytkaraktären ska lagras.
  • c16: 16-bitars karaktären som ska konverteras.
  • ps: En pekare till ett mbstate_t-objekt som används vid tolkning av multibytsträngen.

c16rtomb () Returvärde

  • Vid framgång returnerar funktionen c16rtomb () antalet byte skrivna till teckenuppsättningen pekad av s.
  • Vid fel returneras -1 och EILSEQ lagras i errno.

Exempel: Hur fungerar 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!

Intressanta artiklar...