How to Concatenate Strings in C

Updated onbyAlan Morel
How to Concatenate Strings in C

In C, a string is internally an array of individual characters, with the last element being a null character, which is how the compiler knows when the string ends.

An important thing to know how to do is take one string and add it to another string. This is called concatenation.

C doesn't make it as easy as some other languages, but it's not too hard to do.

In this post, we'll learn how to concatenate strings in C.

How to Concatenate Strings in C

Let's first start by defining the two strings that we want to concatenate.

#include <stdio.h>

int main()
{
    char a[] = "Apple";
    char b[] = "Banana";

    return 0;
}

Now, the easiest way to concatenate strings in C is to use the strcat function. This function is defined in the string.h header file, so we need to include that.

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

Now, we can use the strcat function to concatenate the two strings.

strcat(a, b);

This will modify the first string, a, and add the second string, b, to the end of it.

Let's put it all together and print out the result.

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

int main()
{
    char a[] = "Apple";
    char b[] = "Banana";

    strcat(a, b);

    printf("%s", a);

    return 0;
}
AppleBanana

Under the hood, the strcat function is just looping through the first string, a, and finding the null character at the end of it. Then, it starts adding the characters from the second string, b, to the end of the first string.

Finally, it adds a null character to the end to indicate the end of the string.

Conclusion

In this post, we learned how to concatenate strings in C.

Simply use the strcat function from the string.h header file to concatenate two strings, while modifying the first string.

Thanks for reading!

To learn more about web development, founding a start-up, and bootstrapping a SaaS, follow me on X!
Copyright © 2017 - 2024 Sabe.io. All rights reserved. Made with ❤ in NY.