命名空间
变体
操作

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

[编辑] 备注

由于 std::strncat 需要在每次调用时都查找 dest 的结尾,因此使用 std::strncat 将许多字符串连接到一个字符串中效率很低。

[编辑] 示例

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

输出

Hello World! Go

[编辑] 另请参阅

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