📅  最后修改于: 2020-09-25 09:25:06             🧑  作者: Mango
c32rtomb() 函数在
size_t c32rtomb(char* s, char32_t c32, mbstate_t* ps);
c32rtomb() 函数将utf-32 字符 c32
转换为其等效的多字节,并将其存储在s
指向的对象中。
如果s
表示一个空指针,则对于某些内部缓冲区buf的调用等效于c32rtomb(buf,U'\ 0',ps)。
如果c32
是空宽字符,即U'\ 0',则存储一个空字节。
#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
运行该程序时,输出为:
C++ is super fast.