std::strncat

来自cppreference.com
< cpp‎ | string‎ | byte
在标头 <cstring> 定义
char *strncat( char *dest, const char *src, std::size_t count );

后附 src 所指向的字节字符串到 dest 所指向的字节字符串。至多复制 count 个字符。产生的字节字符串是空终止的。

目标字节字符串必须拥有足够的空间用于连接 destsrc 的内容加上终止空字符,但 src 的大小被限制到 count

若字符串重叠则行为未定义。

参数

dest - 指向要后附到的空终止字节字符串的指针
src - 指向作为复制来源的字符数组的指针
count - 要复制的最大字符数

返回值

dest

注解

因为 strncat 需要在每次调用时找到 dest 的结尾,故用 strncat 将多个字符串连接成一体是低效的。

示例

#include <cstring>
#include <cstdio>
 
int main() 
{
    char str[50] = "Hello ";
    char str2[50] = "World!";
    std::strcat(str, str2);
    std::strncat(str, " Goodbye World!", 3);
    std::puts(str);
}

输出:

Hello World! Go

参阅

连接两个字符串
(函数)
复制一个字符串给另一个
(函数)