How can we copy one string to another string? Here are the answers with C++ examples.
Generally, as an introduction to C++, in addition to int, float, double there is another data type, string that we use for alphanumeric variables. In C++ there are several typedefs for common character types are provided: String types are defined in header <string>.
strings are the string class for byte characters represented with string and alphanumeric characters are stored and displayed in string forms. In another terms string stores for the alphanumeric text with 1 byte chars, called ASCII chars. Strings are the instantiation of the basic_string class template that uses char as the character type. Simply we can define a string as below,
1 2 3 |
std::string str = "This is a String"; |
string has methods to assign, copy, align, replace or to operate with other strings. These methods can be used in all string methods with their appropriate syntax. Here are the string types defined in std namespace with their char type and C++ standard.
How to copy a string to another string in C++ with = operator
We can use ‘=’ operator to copy strings as given example below,
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
#include <iostream> #include <string> int main() { std::string s1,s2; s1 = "first string"; s2 = "second string"; s1 = s2; // copying s2 to s1 std::cout << s1 << '\n'; std::cout << s2 << '\n'; getchar(); return 0; } |
How to use the C++ assign() method to copy strings
We can copy string to another string with assign() method as below,
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
#include <iostream> #include <string> int main() { std::string s1,s2; s1 = "first string"; s2 = "second string"; s1.assign(s2); // copying with assigning std::cout << s1 << '\n'; std::cout << s2 << '\n'; s2 = "new string"; std::cout << s1 << '\n'; std::cout << s2 << '\n'; getchar(); return 0; } |
How to copy a C++ String to a Char array
We can copy a string to char array in given number of chars
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
#include <iostream> #include <string> int main() { char s[]="123456789"; std::string s2 = "new string"; s2.copy(s, 4, 0); // copy 4 chars of s2 to s std::cout << s << '\n'; getchar(); return 0; } |
Note that we can also use these methods to copy wstring in C++.
Design. Code. Compile. Deploy.
Start Free Trial
Free C++Builder Community Edition