There are three ways to convert char* into string in C++.
- Using the “=” operator
- Using the string constructor
- Using the assign function
1. Using the “=” operator
Using the assignment operator, each character of the char pointer array will get assigned to its corresponding index position in the string.
C++
// C++ Program to demonstrate the conversion // of char* to string using '=' #include <iostream> using namespace std;
int main()
{ // declaration of char*
const char * ch = "Welcome to GeeksForGeeks" ;
string s = ch;
cout << s;
return 0;
} |
Output
Welcome to GeeksForGeeks
2. Using string constructor
The string constructor accepts char* as an argument and implicitly changes it to string.
C++
// C++ Program to demonstrate the conversion // of char* to string using string constructor #include <iostream> using namespace std;
int main()
{ const char * ch = "Welcome to GeeksForGeeks" ;
string s(ch);
cout << s;
return 0;
} |
Output
Welcome to GeeksForGeeks
3. Using the assign function
It accepts two arguments, starting pointer and ending pointer, and converts the char pointer array into a string.
C++
// C++ Program to demonstrate the conversion // of char* to string using assign function #include <iostream> using namespace std;
int main()
{ const char * ch = "Welcome to GeeksForGeeks" ;
string str;
// 24 is the size of ch
str.assign(ch, ch + 24);
cout << str;
return 0;
} |
Output
Welcome to GeeksForGeeks
Time complexity: O(N), as time complexity of assign() is O(N) where N is the size of the new string
Auxiliary space: O(1).
Article Tags :
Recommended Articles