在本文中,我们将讨论C ++ STL中std::mbrtowc()函数的工作,语法和示例。
std::mbrtowc()函数是C ++ STL中的内置函数,在<cwchar>头文件中定义。mbrtowc()意味着它将窄多字节字符串转换为宽字符。此函数用于将一个窄的多字节字符转换为宽字符表示。
size_t mbrtowc( wchar_t* pwc, char* str, size_t n, mbstate_t* ps);
该函数接受以下参数-
pwc-这是指向我们要存储输出的位置的指针。
str-用作输入的字符串。
n-这是要检查的字节数。
ps-当我们解释多字节字符串时,它是指向状态对象的指针。
该函数的返回值根据以下条件而有所不同-
0-当必须转换的str中的字符为NULL时,该函数将返回零。
1…n-从字符串* str转换而来的多字节字符的字节数。
-2-当接下来的n个字节不完整但到目前为止是有效的多字节字符时,我们将得到-2。
-1-当我们遇到编码错误时,我们得到-1,没有任何内容写入* pwc。
#include <bits/stdc++.h> using namespace std; void print_(const char* ch){ mbstate_t temp = mbstate_t(); int cal = strlen(ch); const char* i = ch + cal; int total; wchar_t con; while ((total = mbrtowc(&con, ch, i - ch, &temp)) > 0){ wcout << "Next " << total <<" bytes are the character " << con << '\n'; ch += total; } } int main(){ setlocale(LC_ALL, "en_US.utf8"); const char* len = u8"z\u00df\u6c34"; print_(len); }
输出结果
Next 1 bytes are the character z Next 2 bytes are the character ß Next 3 bytes are the character 水
#include <bits/stdc++.h> using namespace std; void print_(const char* ch){ mbstate_t temp = mbstate_t(); int cal = strlen(ch); const char* i = ch + cal; int total; wchar_t con; while ((total = mbrtowc(&con, ch, i - ch, &temp)) > 0){ wcout << "Next " << total <<" bytes are the character " << con << '\n'; ch += total; } } int main(){ setlocale(LC_ALL, "en_US.utf8"); const char* len = u8"\xE2\x88\x83y\xE2\x88\x80x\xC2"; print_(len); }
输出结果
Next 3 bytes are the character ∃ Next 1 bytes are the character y Next 3 bytes are the character ∀ Next 1 bytes are the character x
本文向大家介绍C / C ++中的mbsrtowcs()函数,包括了C / C ++中的mbsrtowcs()函数的使用技巧和注意事项,需要的朋友参考一下 在本文中,我们将讨论C ++ STL中std::mbsrtowcs()函数的工作,语法和示例。 什么是std::mbsrtowcs()? std::mbsrtowcs()函数是C ++ STL中的内置函数,在<cwchar>头文件中定义。表示将
本文向大家介绍C / C ++中的putwchar()函数,包括了C / C ++中的putwchar()函数的使用技巧和注意事项,需要的朋友参考一下 在本文中,我们将讨论C ++ STL中putwchar()函数的工作,语法和示例。 什么是putwchar()? putwchar()函数是C ++ STL中的内置函数,在<cwchar>头文件中定义。putwchar()函数用于在标准输出设备上写
本文向大家介绍C ++程序中的restder(),包括了C ++程序中的restder()的使用技巧和注意事项,需要的朋友参考一下 在本文中,我们将讨论C ++函数的工作原理,语法和示例。 什么啊 restder()函数是C ++ STL中的内置函数,在<cmath>头文件中定义。用于查找其余参数。 此函数采用两个参数,一个用于分子,第二个用于,并计算其余数,并返回一个四舍五入到最接近的浮点数。
用C编程语言显示表或多或少类似于计数。 我们只使用一次迭代并使用正在打印的表的值递增它。 算法 (Algorithm) 让我们首先看看打印表格的逐步程序应该是什么 - START Step 1 → Define table value n Step 2 → Iterate from i = n to (n*10) Step 3 → Display i Step 4 → In
本文向大家介绍C#程序获取C#中的文件名,包括了C#程序获取C#中的文件名的使用技巧和注意事项,需要的朋友参考一下 在字符串中设置路径名- 现在,使用GetFileName()方法获取文件名- 以下是完整的代码- 示例 输出结果
反向计数是整数的序列,按降序排列,不为零。 开发一个用C编程语言计数的程序很简单,我们将在本章中看到。 算法 (Algorithm) 让我们首先看看反向计数的逐步程序应该是什么 - START Step 1 → Define start and end of counting Step 2 → Iterate from end to start Step 3 → Display