有wcsncat_s()
连接两个的功能wchar_t*
:
errno_t wcsncat_s( wchar_t *restrict dest, rsize_t destsz, const wchar_t *restrict src, rsize_t count );
是否有连接两个的等效函数char16_t
?
有wcsncat_s()
连接两个的功能wchar_t*
:
errno_t wcsncat_s( wchar_t *restrict dest, rsize_t destsz, const wchar_t *restrict src, rsize_t count );
是否有连接两个的等效函数char16_t
?
如果你想要一些便携的东西,你可以使用std::u16string 。
std::u16string str1(u16"The quick brown fox ");
std::u16string str2(u16"Jumped over the lazy dog");
std::u16string str3 = str1+str2; // concatenate
const char16_t* psz = str3.c_str();
psz
只要str3
不超出范围,其有效性就会持续。
但更便携和灵活的解决方案是在任何地方都使用 wchar_t(在 Mac 上是 32 位)。除非您明确使用 16 位 char 字符串(可能用于特定的 UTf16 处理例程),否则将代码保留在宽 char ( wchar_t
) 空间中会更容易。在 Mac 和 Windows 上更好地使用本机 API 和库。
并不真地。
但是,在 Windows 上,它在wchar_t
功能上与.char16_t
char16_t*
wchar_t*
否则,您可以通过为自己编写一个函数来简单地做到这一点。