在 C 语言中,strncat
函数用于将一个字符串的指定长度部分追加到另一个字符串的末尾。与 strcat 类似,它可以避免缓冲区溢出的问题。
strncat 函数头文件
strncat
函数的头文件是<string.h>
。在使用strncat
函数之前,确保在你的 C 代码中包含这个头文件:
#include <string.h>
strncat 函数原型
char *strncat(char * restrict s1,
const char * restrict s2,
size_t n);
strncat
函数将s2
指向的字符串中不多于n
个字符附加到s1
指向的字符串末尾。s2
的初始字符将覆盖s1
末尾的空字符。终止符'\0'
始终附加到结果中。如果在重叠的对象之间进行复制,则行为未定义。
参数说明
s1
:目标字符串指针,表示被修改字符串。它必须有足够的空间来容纳追加的内容;s2
:源字符串指针,表示要追加的字符串;n
:表示最多从s2
追加的字符数;
返回值
strcat
函数返回目标字符串指针,也就是s1
的值;
strnccat 示例代码
示例一:
#include <stdio.h>
#include <string.h>
int main() {
char s1[50] = "Hello, ";
char s2[] = "World!";
strncat(s1,s2,3); //追加3个字符
printf("%s\n", s1);
return 0;
}
程序运行效果
Hello, Wor
示例二:
追加字符串时,碰到终止符结束;
#include <stdio.h>
#include <string.h>
int main() {
char s1[50] = "Hello, ";
char s2[] = "W\0orld!";
strncat(s1,s2,3);
printf("%s\n", s1);
return 0;
}
程序运行效果
Hello, W