c++字符串转数组的定义
时间: 2023-11-09 19:03:26 浏览: 80
将C++字符串转换为数组的定义可以有多种方式,以下是其中一种:
```c++
#include <string>
#include <cstring>
int main() {
std::string str = "hello";
char arr[str.size() + 1];
strcpy(arr, str.c_str());
return 0;
}
```
在上面的代码中,我们首先定义了一个C++字符串`str`,然后通过`str.size()`获取字符串的长度,并在定义字符数组`arr`时将其长度加1,以便在末尾添加一个空字符'\0'。最后,我们使用`strcpy()`函数将字符串复制到字符数组中。
相关问题
c++ 字符串转数组
在C中,可以使用以下几种方法将字符串转换为数组。
方法一:利用字符串数组进行操作。首先定义一个字符数组,然后使用cin将字符串赋值给数组,最后使用for循环遍历数组并输出每个字符。示例如下:
```cpp
int main() {
char s != '\0'; i++) {
cout << s[i];
}
return 0;
}
```
方法二:利用指针进行操作。将字符串看作是由字符构成的数组,定义一个char型指针,让指针指向字符串的首地址。然后使用for循环遍历指针所指向的数组,并输出每个字符。示例如下:
```cpp
int main() {
string s1;
cout << "Please input a string:";
cin >> s1;
const char *k = NULL;
k = s1.c_str();
cout << k << endl;
for (int i = 0; k[i != '\0'; i++) {
cout << k[i];
}
return 0;
}
```
以上是两种常用的将字符串转换为数组的方法。你可以根据具体的需求选择其中一种方法来实现。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>
字符串转数组的函数为
字符串转数组的函数可以使用C++中的stringstream类,具体的实现方法如下:
```c++
#include <iostream>
#include <sstream>
#include <vector>
using namespace std;
int main()
{
string str = "1 2 3 4 5";
stringstream ss(str);
vector<int> arr;
int num;
while (ss >> num)
{
arr.push_back(num);
}
for (int i = 0; i < arr.size(); i++)
{
cout << arr[i] << " ";
}
return 0;
}
```
在上面的代码中,我们首先定义了一个字符串`str`,然后创建了一个stringstream对象`ss`,将`str`作为参数传递给`ss`。接着我们定义了一个整型向量`arr`,以及一个整型变量`num`。在while循环中,我们使用stringstream的输入运算符(>>)来从字符串中逐个读取整数,并将它们添加到`arr`中。最后,我们遍历`arr`并将所有元素打印出来。
阅读全文