c++ string转int数组
时间: 2023-10-24 21:25:31 浏览: 37
可以使用 `std::stoi()` 函数将字符串转换为整数,然后将整数存入数组中。以下是示例代码:
```cpp
#include <iostream>
#include <string>
#include <vector>
int main() {
std::string str = "12345";
std::vector<int> arr;
for (char c : str) {
int num = std::stoi(std::string(1, c));
arr.push_back(num);
}
for (int num : arr) {
std::cout << num << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果为:
```
1 2 3 4 5
```
在代码中,我们首先定义一个字符串 `str` 和一个整数数组 `arr`,然后使用 `for` 循环遍历字符串中的每个字符。在循环中,我们使用 `std::stoi()` 函数将字符转换为整数,并使用 `std::string(1, c)` 构造一个只包含当前字符的字符串作为 `std::stoi()` 函数的参数。最后将转换后的整数存入数组中。最后再使用一个 `for` 循环输出整数数组中的所有元素。
相关问题
C++string转换为int数组
以下是将C字符串转换为int数组的示例代码:
```
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main() {
char str[] = "1 2 3 4 5";
int arr[5];
char *ptr = strtok(str, " ");
int i = 0;
while (ptr != NULL) {
arr[i++] = atoi(ptr);
ptr = strtok(NULL, " ");
}
for (i = 0; i < 5; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
在这个示例中,我们首先声明了一个包含5个整数的int数组。然后,我们使用strtok函数将C字符串分割成子字符串,并将它们转换为整数使用atoi函数。最后,我们遍历整个数组并打印每个元素。
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` 打印出来,以验证转换是否成功。
希望这可以帮助到您!如果您有任何其他问题,请随时提问。