The c_str()
method converts a string to an array of characters with a null character at the end. The function takes in no parameters and returns a pointer to this character array (also called a c-string).
your_string_variable.cstr();
The null character at the end of the array indicates the end of a c-string. This character is used to indicate the end of the string and does not get printed.
The following code illustrates how a string is converted to a pointer that points to the beginning of a null-terminated array of characters.
The my_string1
variable stores a phrase, which is converted to a c-string in line 10. A for
loop is then implemented in line 13 to traverse through the whole phrase and print the characters.
#include <iostream>#include <string>int main(){//messagestd::string my_string1 = "Happy Learning at Educative!";//convert to c-string using c_str()std::string my_cstring = my_string1.c_str();for(int i =0; i<my_cstring.length();i++){std::cout<<" character is "<<my_string1[i]<<"\n";}std::cout<<"my cstring is " <<my_cstring<<"\n";}