La fonction c32rtomb () en C ++ convertit un caractère 32 bits en représentation en une représentation étroite de caractères multi-octets.
La fonction c32rtomb () est définie dans le fichier d'en-tête.
prototype c32rtomb ()
size_t c32rtomb (char * s, char32_t c32, mbstate_t * ps);
La fonction c32rtomb () convertit le caractère utf-32 c32 en son équivalent multi-octets et le stocke dans l'objet pointé par s.
Si s représente un pointeur nul, l'appel est équivalent à c32rtomb (buf, U ' 0', ps) pour un tampon interne buf.
Si c32 est le caractère large nul, c'est-à-dire U ' 0', un octet nul est stocké.
Paramètres de c32rtomb ()
- s: pointeur vers un tableau de caractères dans lequel le caractère multi-octets est stocké.
- c32: Le caractère 32 bits à convertir.
- ps: Un pointeur vers un objet mbstate_t utilisé lors de l'interprétation de la chaîne multi-octets.
c32rtomb () Valeur de retour
- En cas de succès, la fonction c32rtomb () renvoie le nombre d'octets écrits dans le tableau de caractères pointé par s.
- En cas d'échec, -1 est renvoyé et errno est défini sur EILSEQ .
Exemple: comment fonctionne la fonction 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.