std::strncat
来自cppreference.com
在标头 <cstring> 定义
|
||
char* strncat( char* dest, const char* src, std::size_t count ); |
||
后附 src 所指向的字节字符串到 dest 所指向的字节字符串。至多复制 count 个字符。产生的字节字符串是空终止的。
目标字节字符串必须拥有足够的空间用于连接 dest 和 src 的内容加上终止空字符,但 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); // 可能引发 "输出被截断" 警告 std::puts(str); }
输出:
Hello World! Go
参阅
连接两个字符串 (函数) | |
复制一个字符串给另一个 (函数) |