c++ string转char数组
时间: 2023-09-04 15:06:36 浏览: 105
好的,关于c string转char数组的问题,你可以使用c_str()函数来获取c string的char数组形式,然后将其赋值给一个char类型的数组即可。例如:
```c++
#include <iostream>
#include <cstring>
int main()
{
char str[] = "hello world";
const char* cstr = str;
int length = strlen(cstr);
char charArray[length + 1]; // 留一个位置存储字符串的结束符
strcpy(charArray, cstr);
std::cout << "charArray: " << charArray << std::endl;
return 0;
}
```
运行结果:
```
charArray: hello world
```
希望这个回答对你有帮助。如果还有其他问题,可以随时问我。
相关问题
C++ string转换char数组
您好!要将 C++ 的 string 转换为 char 数组,您可以使用 c_str() 函数。这个函数将返回一个以 null 结尾的 const char* 指针,指向 string 的底层字符数组。您可以将其赋值给一个 char 数组,如下所示:
```cpp
#include <iostream>
#include <string>
int main() {
std::string str = "Hello, world!";
const char* charArray = str.c_str();
std::cout << "Converted char array: " << charArray << std::endl;
return 0;
}
```
在上面的示例中,我们首先创建了一个 string 对象 `str`,然后使用 `c_str()` 函数获取其底层的 const char* 指针 `charArray`。最后,我们将 `charArray` 打印出来,以验证转换是否成功。
希望这可以帮助到您!如果您有任何其他问题,请随时提问。
C++ string 转char数组
可以使用`c_str()`函数将C++中的string对象转换为char数组。
例如:
```c++
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "hello world";
const char* charArr = str.c_str();
cout << charArr << endl;
return 0;
}
```
输出:
```
hello world
```
注意,`c_str()`函数返回的是一个指向内部字符数组的指针,因此在使用时需要注意该指针是否有效(例如,string对象被销毁后,指针就无效了)。
阅读全文