Convert char* to string in C++
Last Updated :
27 Jan, 2023
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++
#include <iostream>
using namespace std;
int main()
{
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++
#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++
#include <iostream>
using namespace std;
int main()
{
const char * ch = "Welcome to GeeksForGeeks" ;
string str;
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).
Like Article
Suggest improvement
Share your thoughts in the comments
Please Login to comment...