Updated April 14, 2023
Introduction to C++ String append Function
Append is a special function in the string library of C++ which is used to append string of characters to another string and returns * this operator. This is similar to push_back or += operator, but it allows multiple characters to append at the same time. This means a character array can also be appended but it doesn’t allow appending a single character. It also allows to append a specific part of the second string to the first string or defining the number of time a string must be appended. An iterator range is also provided to iterate over the character of strings.
Syntax of C++ String append
Append function allows appending some string of characters to an existing string. There are different syntax present for this in C++.
1. It is used to append a given string str1 to another specified string str. In case after appending the length of the string of character exceeds the maximum number of characterslength_error is thrown by the compiler.
string& string::append (const string& str1)
Example: string my_str(“First String ”); Const here implies that the add-on string in constant and it cannot be modified.
string my_str1(“Second String”);
my_str.append(my_str1);
2. It is used to append at most n number of characters of string str1, starting with index mind. In case ind> str. size() then out_of_range error is thrown and length_error is thrown in a case the resulting size exceeds the maximum number of characters.
string& string::append (const string& str1, intind, size_type n)
Example:
my_str.append(my_str2, 0, 7);
This will append the first seven characters of my_str2 to my_str.
3. It is used to append the character array of the C-string cstr. It throws length_error in case the length of the resulting string exceeds the maximum number of characters.
string& string::append (const char* cstr1)
Example:
my_str.append("This string");
4. It is used to append specific num characters of the given character array chars and in a case the resulting size of the string exceeds the maximum number of characterslength_error is thrown.
string& string::append (const char* chars1, size_typenums)
Example:
my_str.append("This string",6); //This will append 6 characters of given character array to the string.
5. It is used to append a character ch n number of times to a given string. It throws length_error in case the maximum number of characters is less than the resulting size of the string.
string& string::append (size_typenum, char ch)
Example:
my_str1.append(5,'$'); //This will append “$$$$$” to the string tail.
6. It is used to append all characters of the given range [start, end] and throws length_error in a case the resulting size of the string is greater than the maximum number of characters.
string& string::append (InputIteratorstart, InputIterator end)
Example:
my_str.append(str1.begin()+4, str1.end()); // This will append the characters of str1 string starting with 5th character upto end to the given string.Here, str1 refers to the string of characters to be appended.
How string append Function works in C++?
String library has a lot of functions that have been developed to make specific changes to the string objects. Such operations are- append, begin, end, etc.
These operations let us access the strings to start a character or end character.
Append() function is one such function that is used to append some string of characters to given string. It takes the character of the second string and iterates over the first string until its last character is reached. Then it starts copying character by character to the first string. In case the length of the character is exceeded length_error is thrown.
In this way characters are copied to the given string and pointer to the resulting string is returned in form of *this.
Examples to Implement C++ String append Function
Below are the examples of C++ String append:
Example #1
Code:
#include <iostream>
#include <string>
using namespace std;
intmain()
{
string my_str1("Lets see demo for append with ");
string my_str2("Syntax 1");
cout<< "String before append: " << my_str1 <<endl;
my_str1.append(my_str2);
cout<< "After using append() : ";
cout<< my_str1 <<endl;
string my_str3("Lets see demo for append with ");
string my_str4("syntax 2");
cout<< "String before append: " << my_str3 <<endl;
my_str3.append(my_str4, 0, 7);
cout<< "After Using append() : ";
cout<< my_str3 <<endl;
return 0;
}
Output:
Example #2
Code:
#include <iostream>
#include <string>
using namespace std;
intmain()
{
string my_str1("Lets see demo for append with ");
cout<< "String before append: " << my_str1 <<endl;
my_str1.append("Syntax 3");
cout<< "After using append() : ";
cout<< my_str1 <<endl;
string my_str3("Lets see demo for append with ");
cout<< "String before append: " << my_str3 <<endl;
my_str3.append("syntax 4", 5);
cout<< "After Using append() : ";
cout<< my_str3 <<endl;
return 0;
}
Output:
Example #3
Code:
#include <iostream>
#include <string>
using namespace std;
intmain()
{
string my_str1("Lets see demo for append with Syntax 5 ");
cout<< "String before append: " << my_str1 <<endl;
my_str1.append(5,'#');
cout<< "After using append() : ";
cout<< my_str1 <<endl;
string my_str3("Lets see demo ");
string my_str4("for append with Syntax 6 ");
cout<< "String before append: " << my_str3 <<endl;
my_str3.append(my_str4.begin()+7 , my_str4.end());
cout<< "After Using append() : ";
cout<< my_str3 <<endl;
return 0;
}
Output:
Conclusion
Append() is a special feature in the string library of C++ to append a string of characters to the other string. This is similar to += or push_back operator with one enhanced feature that it allows to append multiple characters at one time. Also, a lot of other features are provided to execute the append statement as per our requirements.
Recommended Article
This is a guide to the C++ String append. Here we discuss the Introduction to C++ String append Function and its Syntax with Examples along with Code Implementation and Output. you can also go through our suggested articles to learn more –