命名空间
变体
操作

std::wcsncat

来自 cppreference.cn
< cpp‎ | string‎ | wide
定义于头文件 <cwchar>
wchar_t* wcsncat( wchar_t* dest, const wchar_t* src, std::size_t count );

最多追加 count 个宽字符,从 src 指向的宽字符串到 dest 指向的字符字符串的末尾,如果在复制 null 终止符时停止。src[0] 宽字符替换 dest 末尾的 null 终止符。始终在末尾追加 null 终止符(因此函数可能写入的最大宽字符数为 count + 1)。

如果目标数组不够大,无法容纳 srcdest 的内容以及终止 null 宽字符,则行为未定义。

如果字符串重叠,则行为未定义。

内容

[编辑] 参数

dest - 指向要追加到的 null 终止宽字符串的指针
src - 指向要复制的 null 终止宽字符串的指针
count - 要复制的最大宽字符数

[编辑] 返回值

dest

[编辑] 示例

#include <clocale>
#include <cwchar> 
#include <iostream>
 
int main(void) 
{
    wchar_t str[50] = L"Земля, прощай.";
    std::wcsncat(str, L" ", 1);
    std::wcsncat(str, L"В добрый путь.", 8); // only append the first 8 wide chars
 
    std::setlocale(LC_ALL, "en_US.utf8");
    std::wcout.imbue(std::locale("en_US.utf8"));
    std::wcout << str << '\n';
}

可能输出

Земля, прощай. В добрый

[编辑] 参见

将一个宽字符串的副本追加到另一个宽字符串
(函数) [编辑]
连接两个字符串的特定数量的字符
(函数) [编辑]
将一个宽字符串复制到另一个宽字符串
(函数) [编辑]
C 文档 关于 wcsncat 的内容