C ++ c32rtomb () - C ++ - vakiokirjasto

C ++ - funktio c32rtomb () muuntaa 32-bittisen merkin edustukseksi kapeaksi monitavuiseksi merkkiesitykseksi.

C32rtomb () -funktio määritetään otsikkotiedostossa.

c32rtomb () -prototyyppi

 size_t c32rtomb (char * s, char32_t c32, mbstate_t * ps);

C32rtomb () -toiminto muuntaa utf-32-merkin c32 monitavuiseen ekvivalenttiinsa ja tallentaa sen s: n osoittamaan objektiin.

Jos s edustaa nollaosoitinta, kutsu vastaa c32rtombia (buf, U ' 0', ps) joillekin sisäisille puskureille.

Jos c32 on tyhjä leveä merkki eli U ' 0', nolla tavu tallennetaan.

c32rtomb () -parametrit

  • s: Osoitin merkistöryhmään, johon monitavuinen merkki on tallennettu.
  • c32: 32-bittinen muunnettava merkki.
  • ps: Osoitin mbstate_t-objektille, jota käytetään tulkittaessa monitavuista merkkijonoa.

c32rtomb () Palautusarvo

  • Menestyksessä c32rtomb () -funktio palauttaa merkkijonoon, johon s on osoittanut, kirjoitettujen tavujen määrän.
  • Epäonnistumisen yhteydessä -1 palautetaan ja virheeksi asetetaan EILSEQ .

Esimerkki: Kuinka c32rtomb () -toiminto toimii?

 #include #include using namespace std; int main() ( const char32_t str() = U"C++ is super fast."; char s(50); mbstate_t ps(); size_t length; int j = 0; while (str(j)) ( length = c32rtomb(s, str(j), &ps); if ((length == 0) || (length> 50)) break; for (int i=0; i 

When you run the program, the output will be:

 C++ is super fast.

Mielenkiintoisia artikkeleita...