![Trending Articles on Technical and Non Technical topics](/images/trending_categories.jpeg)
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
C++ Program to Concatenate Two Strings
A string is a one dimensional character array that is terminated by a null character. Concatenation of two strings is the joining of them to form a new string. For example.
String 1: Mangoes are String 2: tasty Concatenation of 2 strings: Mangoes are tasty
A program to concatenate two strings is given as follows.
Example
#include <iostream> using namespace std; int main() { char str1[100] = "Hi..."; char str2[100] = "How are you"; int i,j; cout<<"String 1: "<<str1<<endl; cout<<"String 2: "<<str2<<endl; for(i = 0; str1[i] != '\0'; ++i); j=0; while(str2[j] != '\0') { str1[i] = str2[j]; i++; j++; } str1[i] = '\0'; cout<<"String after concatenation: "<<str1; return 0; }
Output
String 1: Hi... String 2: How are you String after concatenation: Hi...How are you
In the above program, there are two strings str1 and str2. A for loop is used to reach the end of str1. At the end of the for loop, i contains the index of the null value in the str1. The following code snippet demonstrates this.
for(i = 0; str1[i] != '\0'; ++i);
A while loop is used to transfer the value of str2 to str1. Variable j starts from 0 and copies the character in str2 into str1 at the position pointed by i. This loop runs till value of str2[j] is not null. This is demonstrated as follows.
j=0; while(str2[j] != '\0') { str1[i] = str2[j]; i++; j++; }
After the strings are concatenated in str1, null is added to the end. Then the concatenated string is displayed. The code snippet for this is as follows −
str1[i] = '\0'; cout<<"String after concatenation: "<<str1;