basic_string c_str function in C++ STL
The basic_string::c_str() is a built-in function in C++ which returns a pointer to an array that contains a null-terminated sequence of characters representing the current value of the basic_string object. This array includes the same sequence of characters that make up the value of the basic_string object plus an additional terminating null-character at the end.
Syntax:
const CharT* c_str() const
Parameter: The function does not accept any parameter.
Return Value : The function returns a constant Null terminated pointer to the character array storage of the string.
Below is the implementation of the above function:
Program 1:
CPP
#include <bits/stdc++.h>
#include <string>
using namespace std;
int main()
{
string s1 = "GeeksForGeeks" ;
if (s1.size() == strlen (s1.c_str())) {
cout << "s1.size is equal to strlen(s1.c_str()) " << endl;
}
else {
cout << "s1.size is not equal to strlen(s1.c_str())" << endl;
}
printf ( "%s \n" , s1.c_str());
}
|
Output
s1.size is equal to strlen(s1.c_str())
GeeksForGeeks
Program 2:
CPP
#include <bits/stdc++.h>
#include <string>
using namespace std;
int main()
{
string s1 = "Aditya" ;
for ( int i = 0; i < s1.length(); i++) {
cout << "The " << i + 1 << "th character of string " << s1
<< " is " << s1.c_str()[i] << endl;
}
}
|
Output
The 1th character of string Aditya is A
The 2th character of string Aditya is d
The 3th character of string Aditya is i
The 4th character of string Aditya is t
The 5th character of string Aditya is y
The 6th character of string Aditya is a
Program 3:
C++
#include <bits/stdc++.h>
const char * copyString(std::string s)
{
const char * s2;
s2 = s.c_str();
return s2;
}
int main()
{
std::string s1 = "GeeksforGeeks" ;
std::string s2;
s2 = copyString(s1);
std::cout << s2;
return 0;
}
|
Last Updated :
07 Feb, 2023
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...