Open In App

basic_string c_str function in C++ STL

Last Updated : 07 Feb, 2023
Suggest changes
Share
Like Article
Like
Report

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
// C++ code for illustration of // basic_string::c_str function #include <bits/stdc++.h> #include <string> using namespace std; int main() {  // declare a example string  string s1 = "GeeksForGeeks";  // check if the size of the string is same as the  // size of character pointer given by c_str  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;  }  // print the string  printf("%s \n", s1.c_str()); } 

Output
s1.size is equal to strlen(s1.c_str()) GeeksForGeeks 

Program 2: 

CPP
// C++ code for illustration of // basic_string::c_str function #include <bits/stdc++.h> #include <string> using namespace std; int main() {  // declare a example string  string s1 = "Aditya";  // print the characters of the string  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++
// CPP program to copy the string // using std::string::c_str() method #include <bits/stdc++.h> // Function to copy the string const char* copyString(std::string s) {  const char* s2;  // std::string::c_str() method  s2 = s.c_str();  return s2; } // Driver Code int main() {  std::string s1 = "GeeksforGeeks";  std::string s2;  // Function Call  s2 = copyString(s1);  std::cout << s2;  return 0; } // This code is contributed by Susobhan Akhuli 

Output
GeeksforGeeks

Similar Reads

Article Tags :
Practice Tags :