当前位置: C语言 -- 标准库 -- <wchar.h> -- wcsncat

wcsncat函数


概要:
#include <wchar.h>
wchar_t *wcsncat(wchar_t * restrict s1,
      const wchar_t * restrict s2,
      size_t n);

描述:

该函数从参数s2指向的数组中添加不超过n个宽字符(空宽字符和空宽字符后的宽字符不会被添加。)到参数s1指向宽字符串的末尾。参数s2指向数组的初始宽字符覆盖参数s1指向宽字符串的终止空宽字符。结果会被添加终止空宽字符,因此添加后参数s1指向数组的最大宽字符数是wcslen(s1)+n+1

参数s1指向的数组应足够大,能够容纳生成的结果宽字符串。

如果复制发生在重叠对象之间,函数行为是未定义的。

ISO/IEC 9899:2018标准定义了该函数的安全版本wcsncat_s


参数:
wchar_t * restrict s1

指向目标数组的指针,结果宽字符串将存入该数组。

const wchar_t * restrict s2

指向源数组的指针,从该数组中读取宽字符。

size_t n

最多可以添加的宽字符数。


返回值:

函数返回s1的值。


范例:
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
17 
18 
/*函数wcsncat范例*/

#include <locale.h>
#include <wchar.h>

int main(void)
{
    setlocale(LC_ALL, "");
    
    wchar_t wStrOne[5] = L"早安";
    const wchar_t wStrTwo[] = L"中国上海";

    wcsncat(wStrOne, wStrTwo, 2);
    wprintf(L"%ls\n", wStrOne);
    
    return 0;
}


输出:

早安中国


相关内容:
wcscat 连接宽字符串的函数。