c++

c++中string转char数组怎么实现

小亿
630
2024-05-30 12:21:09
栏目: 编程语言

在C++中将string转换为char数组可以使用以下方法:

  1. 使用string类的c_str()方法:将string对象转换为C风格的字符串,然后再将其转换为char数组。示例如下:
#include <iostream>
#include <string>

int main() {
    std::string str = "Hello, World!";
    
    const char *cstr = str.c_str();
    
    char charArray[str.length()+1];
    strcpy(charArray, cstr);
    
    std::cout << "String: " << str << std::endl;
    std::cout << "Char Array: " << charArray << std::endl;
    
    return 0;
}
  1. 使用string类的copy()方法:将string对象中的字符复制到char数组中。示例如下:
#include <iostream>
#include <string>

int main() {
    std::string str = "Hello, World!";
    
    char charArray[str.length()+1];
    str.copy(charArray, str.length());
    charArray[str.length()] = '\0'; // 添加字符串结束符
    
    std::cout << "String: " << str << std::endl;
    std::cout << "Char Array: " << charArray << std::endl;
    
    return 0;
}

这两种方法都可以将string对象转换为char数组,可以根据具体的需求选择合适的方法。

0
看了该问题的人还看了