c++string字符串转为数组
作者:野牛程序员:2024-07-14 12:58:56 C++阅读 2442
c++string字符串转为数组
在C++中,可以将 std::string
字符串转换为字符数组。有几种方法可以实现这一点,以下是一些常见的方法:
方法一:使用 c_str()
方法
c_str()
方法返回一个指向正规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; }
方法二:使用 std::vector<char>
可以使用 std::vector<char>
来存储字符串内容,以便更灵活地处理字符数组。
#include <iostream> #include <vector> int main() { std::string str = "Hello, World!"; std::vector<char> arr(str.begin(), str.end()); arr.push_back('\0'); // 添加字符串终止符 std::cout << &arr[0] << std::endl; // 输出字符数组 return 0; }
方法三:手动逐字符复制
可以手动将 std::string
中的字符复制到字符数组中。
#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; }
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
- 上一篇:python语言关键字一览表
- 下一篇:C++关键字和常用英语单词