C ++ funkcija c32rtomb () paverčia 32 bitų simbolį vaizdavimu į siaurą daugiabačio simbolio vaizdą.
Funkcija c32rtomb () yra apibrėžta antraštės faile.
c32rtomb () prototipas
dydis_t c32rtomb (char * s, char32_t c32, mbstate_t * ps);
Funkcija „c32rtomb“ () paverčia „utf-32“ simbolį „c32“ į daugiabaitį atitikmenį ir saugo jį s sektelyje.
Jei s reiškia nulinį rodyklę, iškvietimas yra lygus c32rtomb (buf, U ' 0', ps) tam tikram vidiniam buferio bufui.
Jei c32 yra nulinis platus simbolis, ty U ' 0', saugomas nulinis baitas.
c32rtomb () parametrai
- s: žymeklis į simbolių masyvą, kuriame saugomas kelių baitų simbolis.
- c32: 32 bitų simbolis, kurį reikia konvertuoti.
- ps: žymeklis į objektą „mbstate_t“, naudojamas aiškinant kelių baitų eilutę.
c32rtomb () Grąžinimo vertė
- Pasisekus, funkcija c32rtomb () grąžina baitų, parašytų simbolių masyvui, skaičių, nurodytą s.
- Sugedus, grąžinama -1 ir klaida nustatoma kaip EILSEQ .
Pavyzdys: Kaip veikia funkcija c32rtomb ()?
#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.