c_str()是C++中的函数,出现这个函数的原因是c语言没有string类型,目的是让C++更好地兼容c语言,作用是把string类型的数据变为const *char类型。
注意点:
1.由于是const char *类型,所以指向的字符不能被修改,所以不能赋值给char*类型的变量。如果读者对该变量无法读懂,可以参考笔者之前的文章c语言中的复杂声明。
所以如果要遇到赋值的情况,可以使用c语言中的strcpy()函数实现。
2.由于c语言中没有string类型,如果要在c++中使用printf()函数输出,则必须先用c_str()函数转化为const char* 类型,然后再输出。