C Tutorial/string.h/strncat
strncat
Item Value Header file string.h Declaration char *strncat(char *str1, const char *str2, size_t count); Function concatenates not more than count characters of *str2 to *str1 and terminates str1 with a null. Return returns *str1.
You have to ensure that str1 is large enough to hold both its str1 and str2.
<source lang="cpp">#include <stdio.h>
#include <string.h> int main(void) { char s1[80], s2[80]; unsigned int len; gets(s1); gets(s2);
len = 79-strlen(s2); strncat(s2, s1, len); printf(s2); return 0; }</source>
Using strcat and strncat
<source lang="cpp">#include <stdio.h>
- include <string.h>
int main() {
char s1[ 20 ] = "Happy "; char s2[] = "New Year "; char s3[ 40 ] = ""; printf( "s1 = %s\ns2 = %s\n", s1, s2 ); printf( "strcat( s1, s2 ) = %s\n", strcat( s1, s2 ) ); printf( "strncat( s3, s1, 6 ) = %s\n", strncat( s3, s1, 6 ) ); printf( "strcat( s3, s1 ) = %s\n", strcat( s3, s1 ) ); return 0;
}</source>
s1 = Happy s2 = New Year strcat( s1, s2 ) = Happy New Year strncat( s3, s1, 6 ) = Happy strcat( s3, s1 ) = Happy Happy New Year