一、什么是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)