What is strcat() Function in C language?

The C library function char *strcat(char *dest, const char *src) appends the string pointed to by src to the end of the string pointed to by dest.

An array of characters is called a string.


Following is the declaration for an array −

char stringname [size];

For example − char string[50]; string of length 50 characters


  • Using single character constant −
char string[10] = { ‘H’, ‘e’, ‘l’, ‘l’, ‘o’ ,‘\0’}
  • Using string constants −
char string[10] = "Hello":;

Accessing − There is a control string "%s" used for accessing the string till it encounters ‘\0’.

The strcat( ) function

  • This is used for combining or concatenating two strings.

  • The length of the destination string must be greater than the source string.

  • The result concatenated string is the source string.


The syntax is as follows −

strcat (Destination String, Source string);

Example Program

The following program shows the usage of strcat() function.

 Live Demo

#include <string.h>
   char a[50] = "Hello 
";    char b[20] = "Good Morning
";    strcat (a,b);    printf("concatenated string = %s", a); }


When the above program is executed, it produces the following result −

Concatenated string = Hello Good Morning


Let’s see another example.

Following is the C program to concatenate source string to destination string using strcat library function −

void main(){
   //Declaring source and destination strings//
   char source[45],destination[50];
   //Reading source string and destination string from user//
   printf("Enter the source string : 
");    gets(source);    printf("Enter the destination string :
");    gets(destination);    //Concatenate all the above results//    strcat(source,destination);    //Printing destination string//    printf("The modified destination string :");    puts(source); }


When the above program is executed, it produces the following result −

Enter the source string :Tutorials Point
Enter the destination string :C programming
The modified destination string :Tutorials Point C programming