一、什么是strncat
strncat是一个C标准库函数,用于将一个字符串的一部分追加到另一个字符串的末尾。
strncat的语法格式:
char *strncat(char *dest, const char *src, size_t n);
其中:
- dest是目标字符串;
- src是源字符串;
- n是要拷贝的字符个数;
也就是说,src指向的字符串的前n个字符会追加到dest指向的字符串的末尾,并在dest末尾添加终止符。如果src字符串的长度小于n,则追加整个src字符串。如果src字符串的长度大于或等于n,则只追加src字符串的前n个字符。
二、strncat的使用
以下是strncat的简单使用示例:
#include<stdio.h>
//strncat的使用
#include<string.h>//使用库函数strncat需要包含的头文件
int main()
{
char source[] = " world!";
char dest[20] = "Hello";
strncat(dest, source, 7);//将source中的七个字符衔接到dest的末尾,拷贝结束后会添加一个终止符
printf("%s\n", dest);
return 0;
}
三、strncat的模拟实现
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
//strncat的模拟实现
//strncat的原型:char *strncat(char *dest, const char *src, size_t n);
char* my_strncat(char* dest, const char* src, size_t n)
{
char* start = dest;
while (*start!='\0')
{
start++;
}//跳出循环时*start='\0'
while (n != 0)
{
*start = *src;
start++;
src++;
n--;
}
*start = '\0';
return dest;
}
int main()
{
char dest[20] = "Hello";
char source[] = " world!";
my_strncat(dest, source, 6);
printf("%s\n", dest);
return 0;
}
更多C语言相关练习请跳转test_c: C语言练习,包括常见语法练习以及小项目练习。 (gitee.com)