在C++中,可以将 字符串转换为字符数组。有几种方法可以实现这一点,以下是一些常见的方法:
方法一:使用 方法
方法返回一个指向正规C字符串的指针,实际内容为字符数组。可以将其复制到一个字符数组中。
#include <iostream> #include <cstring> // 包含 strcpy int main() { std::string str = "Hello, World!"; char arr[50]; // 确保数组大小足够大 std::strcpy(arr, str.c_str()); std::cout << arr << std::endl; // 输出字符数组 return 0; }
方法二:使用
可以使用 来存储字符串内容,以便更灵活地处理字符数组。
#include <iostream> #include <vector> int main() { std::string str = "Hello, World!"; std::vector&新澳六开彩开奖号码结果历史查询大全lt;char> arr(str.begin(), str.end()); arr.push_back('\0'); // 添加字符串终止符 std::cout << &arr[0] << std::endl; // 输出字符数组 return 0; }
方法三:手动逐字符复制
可以手动将 中的字符复制到字符数组中。
#include <iostream> int main() { std::string str = "Hello, World!"; char arr[50]; // 确保数组大小足够大 for (size_t i = 0; i < str.size(); ++i) { arr[i] = str[i]; } arr[str.size()] = '\0'; // 添加字符串终止符 std::cout << arr << std::endl; // 输出字符数组 return 0; }