c_str()

导读 `c_str()` 是 C++ 标准库中的一个成员函数,主要用于将 `std::string` 对象转换为传统的 C 风格字符串(即以 null 结尾的字符数组

`c_str()` 是 C++ 标准库中的一个成员函数,主要用于将 `std::string` 对象转换为传统的 C 风格字符串(即以 null 结尾的字符数组)。这个函数通常用在需要将 `std::string` 对象传递给接受 C 风格字符串参数的函数时。

这里是 `c_str()` 函数的基本用法:

```cpp

#include

#include

int main() {

std::string str = "Hello, World!";

const char* cStr = str.c_str(); // 将 std::string 转换为 C 风格字符串

std::cout << cStr << std::endl; // 输出:Hello, World!

return 0;

}

```

在这个例子中,我们首先创建了一个 `std::string` 对象 `str`,然后使用 `c_str()` 函数将其转换为 C 风格字符串 `cStr`。然后,我们可以像处理普通的 C 风格字符串一样使用 `cStr`。需要注意的是,通过 `c_str()` 获得的指针指向的是 `std::string` 内部存储的字符数组,这个数组在 `std::string` 对象生命周期内是有效的。一旦 `std::string` 对象被销毁或修改,这个指针可能会变得无效。因此,在使用 `c_str()` 时需要谨慎处理其生命周期问题。

版权声明:本文由用户上传,如有侵权请联系删除!