c++ 字符串转数组
时间: 2023-10-20 09:34:57 浏览: 122
在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++ 字符串转数组
可以使用字符串的成员函数 `c_str()` 将字符串转换为字符数组。例如:
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "hello";
char arr[6];
strcpy(arr, str.c_str());
for (int i = 0; i < 5; i++) {
cout << arr[i] << " ";
}
cout << endl;
return 0;
}
```
输出结果为:
```
h e l l o
```
c++字符串转数组的定义
将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()`函数将字符串复制到字符数组中。
阅读全文