std::strncat

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

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

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

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

目录

[编辑]参数

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

[编辑]返回值

dest

[编辑]注解

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

[编辑]示例

#include <cstdio>#include <cstring>   int main(){char str[50]="Hello ";constchar str2[50]="World!";std::strcat(str, str2); std::strncat(str, " Goodbye World!", 3);// 可能引发 "输出被截断" 警告std::puts(str);}

输出:

Hello World! Go

[编辑]参阅

连接两个字符串
(函数)[编辑]
复制字符串给另一个
(函数)[编辑]
strncat 的 C 文档
close