什么是C语言中的strncat()函数?

C库函数char * strncat(char * dest,const char * src,size_t n)将src指向的字符串附加到dest指向的字符串的末尾,最多n个字符。

字符数组称为字符串。

宣言

以下是数组的声明-

char stringname [size];

例如:char string [50]; 长度为50个字符的字符串

初始化

  • 使用单字符常量-

char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}

  • 使用字符串常量-

char string[10] = “Hello”:;

访问-控制字符串“%s”用于访问字符串,直到遇到“ \ 0”为止。

该strncat( )功能

  • 这用于将一个字符串的n个字符组合或串联到另一个字符串中。

  • 目标字符串的长度大于源字符串的长度。

  • 结果级联字符串将在源字符串中。

语法如下-

strncat (Destination String, Source string,n);

示例

以下程序显示了strncat()功能的用法-

#include <string.h>
main ( ){
   char a [30] = "Hello \n";
   char b [20] = "Good Morning \n";
   strncat (a,b,4);
   a [9] = "\0";
   printf("concatenated string = %s", a);
}
输出结果

执行以上程序后,将产生以下结果-

Concatenated string = Hello Good.

让我们看另一个例子-

下面给出的C程序使用strncat库函数将n个字符从源字符串连接到目标字符串-

#include<stdio.h>
#include<string.h>
void main(){
   //Declaring source and destination strings//
   char source[45],destination[50];
   //Reading source string and destination string from user//
   printf("输入源字符串:");
   gets(source);
      printf("在以下位置输入目标字符串:");
   gets(destination);
   //Concatenate all the above results//
   destination[2]='\0';
   strncat(destination,source,2);
   strncat(destination,&source[4],1);
   //Printing destination string//
   printf("修改后的目标字符串:");
   puts(destination);
}
输出结果

执行以上程序后,将产生以下结果-

输入源字符串:nhooo.com
在以下位置输入目标字符串:nhooo.com C Programming
修改后的目标字符串:TuTur