c++指针法实现字符串逆序排列
时间: 2024-12-24 22:28:34 浏览: 5
在 C++ 中,使用指针可以方便地实现字符串的逆序排列。一种常见的方法是通过两个指针,一个指向字符串开始(通常初始化为`nullptr`),另一个指向字符串的结尾。然后交换这两个指针所指向的字符,并将两个指针向中间移动,直到它们相遇或交叉。
下面是一个简单的示例:
```cpp
#include <iostream>
using namespace std;
void reverseString(char* str) {
if (str == nullptr || str[0] == '\0') { // 如果指针为空或字符串结束
return;
}
char* start = str; // 开始指针
char* end = str + strlen(str) - 1; // 结束指针
while (start < end) { // 当开始指针小于结束指针时继续循环
swap(*start, *end); // 交换字符
start++; // 向前移动开始指针
end--; // 向后移动结束指针
}
}
int main() {
char str[] = "Hello, World!";
cout << "Original string: " << str << endl;
reverseString(str);
cout << "Reversed string: " << str << endl;
return 0;
}
```
在这个例子中,`reverseString`函数接受一个字符指针作为输入,通过不断交换指针位置,实现了字符串的逆序。
阅读全文