C ++ 'daki c32rtomb () işlevi, 32 bitlik bir karakteri dar bir çok baytlı karakter gösterimine dönüştürür.
C32rtomb () işlevi başlık dosyasında tanımlanmıştır.
c32rtomb () prototipi
size_t c32rtomb (char * s, char32_t c32, mbstate_t * ps);
C32rtomb () işlevi, utf-32 karakteri c32'yi çok baytlı eşdeğerine dönüştürür ve s ile gösterilen nesnede depolar.
Eğer s bir boş göstericiyi temsil ediyorsa, çağrı bazı dahili tampon tamponları için c32rtomb (buf, U ' 0', ps) ile eşdeğerdir.
Eğer c32 boş geniş karakter ise, yani U ' 0' ise, bir boş bayt saklanır.
c32rtomb () Parametreler
- s: Çok baytlı karakterin depolandığı bir karakter dizisine işaretçi.
- c32: Dönüştürülecek 32 bit karakter.
- ps: Çok baytlı dizeyi yorumlarken kullanılan bir mbstate_t nesnesine işaretçi.
c32rtomb () Dönüş değeri
- Başarı durumunda c32rtomb () işlevi, s ile gösterilen karakter dizisine yazılan bayt sayısını döndürür.
- Başarısızlık durumunda -1 döndürülür ve errno EILSEQ olarak ayarlanır .
Örnek: c32rtomb () işlevi nasıl çalışır?
#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.