×

C++ String Concatenation

C++ String Concatenation

In this section, we will learn about C ++ String Concatenation, what it does, how it works, and will also see its programs.

What is the String Concatenation?

The + operator can be used to form a new string between strings to link them together. That is known as concatenation.

There are different ways to perform concatenation of strings. We will be discussing each one of them.

Using strcat() function.

The strcat) (function is set to the header file of "string.h."

Syntax:           

char * strcat(char * init, const char * add)

The string init and add should be of character array(char *). This function concatenates the added string to the init string end.

Example:

#include <bits/stdc++.h>
using namespace std;
int main()
{
    char init[] = " init";
    char add[] = " join this ";
    strcat(init, add);
    cout << init << endl;
    return 0;
}

Output:

C++ String Concatenation

Using append() function.

A string in C++ is actually an object that contains functions to perform some string operations. For, e.g., you can also use the function append() to concatenate strings.

Syntax:-

String & string::append ( const string& str )

Here str is the std::string class object, which is an instantiation of the basic string class template which uses char as a type of its character. At the end of the0 init string, the append function appends the add(variable) string.

In the above example, we added space on output after firstName to create a space between Mike and Johnson. You can, however, also add a space with quotes ("or"):

#include <iostream>
#include <string>
using namespace std;
int main () {
  string firstName = "Mike";
  string lastName = "Johnson";
  string fullName = firstName.append(lastName);
  cout << fullName;
  return 0;
}

Output:

C++ String Concatenation

Whether you want to use + or append() is up to you. The key difference between the two is that the function append() is much quicker. Nonetheless, it may be better to only use + for checking and so on.

Using ‘+’ Operator

Syntax:

string new_string = string init + string add;

It is the simplest way to merge two strings. The + operator actually puts the two strings together and returns a concatenated string.

Example:

#include <bits/stdc++.h>
using namespace std;
int main()
{
    string cha1("Hello,");
    string cha2("my name is mike johnson.");
    string cha3("I am a software developer");
    string cha4(" in Company ");
    string cha5(" from Us");
    string cha6(" As a good developer");
    // Appending the string.
   cha1 = cha1 + cha2 + cha3 + cha4  + cha5 + cha6;
    cout << cha1 << endl;
    return 0;
}

Output:

C++ String Concatenation

Example

#include <iostream>
using namespace std;
int main()
{
    string s1, s2, result;
    cout << "Enter string s1: ";
    getline (cin, s1);
    cout << "Enter string s2: ";
    getline (cin, s2);
    result = s1 + s2;
    cout << "Resultant String = "<< result;
    return 0;
}

Output:

C++ String Concatenation

Without using function

For this, we concatenate two separate strings without using strcat() as the concatenation function.

Example:

#include<iostream>
#include<string.h>
using namespace std;
int main()
{
          //declare strings
          char string1[100];
          char string2[100];
          //input first string
          cout<<"Enter first string : "<<endl;
          cin.getline(string1,100);
          //input second string
          cout<<"Enter second string : "<<endl;
          cin.getline(string2,100);
          //variable as loop counnters
          int k, f;
          //keep first string same
          for(k=0; string1[k] != '\0'; k++)
          {
                   ;
          }
          //copy the characters of string 2 in string1
          for(f=0; string2[f] != '\0'; f++,k++)
          {
                   string1[k]=string2[f];
          }
          //insert NULL
          string1[k]='\0';
          //printing
          cout<<string1<<endl;
          return 0;
}

Output:

C++ String Concatenation

Related Topics

C++ Inline function

A C++ function that extends in line when called is known as an inline function. It reduces function call overhead by having the compiler use the function code rather than...

4 minutes read.

Pure Virtual Function in C++ With Example Program

What is a Virtual Function? A virtual function is created inside a class with the keyword virtual. A virtual function does not have any value to be returned. Once a virtual...

3 minutes read.

Data Hiding in C++

C++ : High-performance apps can be made using the cross-platform language C++. Bjarne Stroustrup created C++ as an addition to the C language. Programmers have extensive control over memory and system...

3 minutes read.

C++ | C Plus Plus Data type

Data type in every language is very important. Data type means the different kinds of data that are supported by a particular programming language. A computer language’s data types specify the...

15 minutes read.

Check for Balanced Brackets in an Expression (well-formedness) using Stack

Write a program that check the correctness of the pairs and ordering of the characters “{“, “}”, “(“, “)”, “[“, “]” in the expression string exp. Example: Checking for balanced parenthesis is one of...

2 minutes read.

How to create a button in C++

A button is an option through which a user can control to click a provided input to an application. There are several buttons, each with different styles, to maintain the...

3 minutes read.

How to Sort an Array in C++

What is Sorting? Sorting is a process of arranging elements in sequential order, either numerically or alphabetically. The sorting of a numerical array can be accomplished using a variety of algorithms,...

4 minutes read.

C++ Continue

In C++, the continue statement is a useful tool for avoiding specific scenarios without breaking the loop. It is employed inside loops to move directly to the following iteration and...

4 minutes read.

Singleton Design Pattern in C++

Singleton is similar to the global variable. Singleton helps to have only one object of its kind and provides only single access. One of the key features of the singleton...

2 minutes read.

C++ Prime number program

In this lesson, you'll learn how to verify whether a given number is a prime number or not in C++, and you'll obtain code to do it. What is the definition...

3 minutes read.

Object Slicing in C++

In this article, we will learn about Object slicing. When an object from a derived class is assigned to an object from a base class in C++, these extra attributes...

3 minutes read.

Palindrome Number Program in C++

A palindrome number is one that is the same when it is reversed. Palindrome numbers include 22, 33, 44, 55, 66, 77, 88, and 99. Algorithm for Palindrome Numbers Get the user's...

4 minutes read.

Tensorflow in C++

With cppflow, you can execute TensorFlow models in C++ without Bazel, TensorFlow installation, or TensorFlow compilation. Tensor manipulation, eager execution, and running stored models straight from C++ are all possible. Knowing...

7 minutes read.

C++ find missing in the second array

Given two arrays A and B of sizes n and m. Find the elements from array A that are not present in array B. Example Input : a[] = {1, 2, 3, 5,...

3 minutes read.

Difference between exit() and _Exit() in C++

Before understanding the difference between the exit() and _Exit(), one must know about exit() and _Exit() functions. The exit() function in C/C++ The exit() method in the C language kills the calling...

3 minutes read.

C++ Ternary Operator

In this tutorial, we'll learn about the C++ ternary operator and how to utilise it to manage the program's flow using examples. Ternary Operator: The if-else statement and the conditional operator use...

3 minutes read.

C++ Constructor

Constructor is a specific method in C ++ that is automatically called when an object is created. Typically, it is used to set the data members of a new object....

4 minutes read.

This keyword in C++

This keyword in C++ is a pointer which points to the object. It is passed as an argument to functions which helps in accessing the object. It is used for a...

3 minutes read.

Two dimension array

C++ Two dimension (2D) Array Two dimension (2D) array is an array of arrays. It is represented in the form of row and column. The elements of 2D array are accessed through the...

2 minutes read.

Classes and Objects in C++

When it comes to object-oriented programming, objects are the basic building blocks. Memory is taken up by objects, which contain data and methods or functions that operate on it. On...

3 minutes read.