strncat in C language

The C strncat function is a String Function used to append n number of characters from a user-specified string to the end of the existing one. The syntax of the strncat in this C Programming language is

char *strncat(char *destination, char *source, size_t n);

or we can simply write it as:

strncat(str1, str2, string_size);
  • source: A valid string that you want to append to the destination
  • Destination: This is where the function will append the characters from Source.
  • n: The number of characters that you want to append from the Source.

strncat in C language Example

The C strncat function appends the user-specified text to the existing string. This program will help you to understand the strncat with multiple examples.

TIP: You must include the #include<string.h> header before using this strncat String Function.

#include <stdio.h> 
#include<string.h>

int main()
{
   	char str1[] = "Learn";
   	char str2[] = "Learn";
   
   	char str3[] = " C Programming Language";
   	char str4[] = " at tutorialgateway.org";
	
   	strncat(str1, str3, 40);		
   	printf("\n The Final after the Concatenation = %s", str1);
   
   	strncat(str2, str3, 10);
   	printf("\n The Final after the Concatenation = %s", str2);
 	
   	strncat(str3, str4, 19);
   	printf("\n The Final after the Concatenation = %s", str3);
   	
	getch();
	return 0;
}
 The Final after the Concatenation = Learn C Programming Language
 The Final after the Concatenation = Learn C Program
 The Final after the Concatenation = C Programming Language at tutorialgateway.org

This statement will append all the characters in str3 to str1 because the length of C Programming Language is less than the given size of 40.

strncat(str1, str3, 40);

This function will append the first 10 characters present in str3 to str1 because we are restricting the size to 10.

strncat(str2, str3, 10);

strncat in C Example 2

This program allows the user to enter the source and destination strings. Next, it is going to contact them using the strncat function.

#include <stdio.h> 
#include<string.h>
 
int main()
{
	char str1[100], str2[100];
 
	printf("\n Please Enter First String  : ");
	gets(str1);	
	
	printf("\n Please Enter the String that you want to concat : ");
	gets(str2);	
	
	strncat(str1, str2, 8);
	
 	printf("\n The Final String after the Concatenation = %s", str1);
	
}

Although the given string is valid, the strncat function is only appended up to Tutorial. It is because we restricted the concatenation function to the first 8 characters.

strncat in C Language 2

Let me change the Size value to 16 and see

 Please Enter First String  : Visit

 Please Enter the String that you want to concat : Tutorial Gateway

 The Final String after the Concatenation = Visit Tutorial Gateway

About Suresh

Suresh is the founder of TutorialGateway and a freelance software developer. He specialized in Designing and Developing Windows and Web applications. The experience he gained in Programming and BI integration, and reporting tools translates into this blog. You can find him on Facebook or Twitter.