用字符数组的方法逆序存放字符串
时间: 2024-11-29 13:36:17 浏览: 23
使用字符数组来逆序存放字符串,你可以创建一个新的字符数组或者直接在原有的数组上进行操作。下面是一个简单的示例,我们将字符串逆序存储在一个新的字符数组中:
```c++
#include <iostream>
void reverseString(char src[], char dst[]) {
int length = strlen(src);
for (int i = 0; i < length / 2; i++) {
// 交换源数组和目标数组的元素
char temp = src[i];
src[i] = src[length - i - 1]; // 从源数组的末尾开始取值
src[length - i - 1] = temp; // 将取到的值放回源数组的对应位置
// 目标数组不需要改变,因为它是用来保存结果的
}
}
int main() {
char originalStr[] = "Hello, World!";
int len = strlen(originalStr);
char reversedStr[len]; // 创建一个新的字符数组用于存放逆序字符串
// 复制原字符串到新数组
for (int i = 0; i < len; i++) {
reversedStr[i] = originalStr[i];
}
// 逆序操作
reverseString(originalStr, reversedStr);
// 输出原字符串和逆序后的字符串
std::cout << "Original String: " << originalStr << std::endl;
std::cout << "Reversed String: " << reversedStr << std::endl;
return 0;
}
```
在这个例子中,我们首先计算出源字符串的长度,然后逐个交换源数组的前半部分和后半部分的字符。这样,`reversedStr`数组就存储了逆序的字符串。
阅读全文