21xrx.com
2025-07-15 09:55:56 Tuesday
登录
文章检索 我的文章 写文章
C++字符串颠倒:如何实现字符串倒序输出?
2023-07-04 20:31:27 深夜i     86     0
C++ 字符串 颠倒 倒序输出 实现

在C++的编程中,经常需要字符串进行操作,其中一个常见的操作就是颠倒字符串,即将字符串倒序输出。本文将介绍如何实现字符串的颠倒。

第一种方法是使用循环和指针的方式来实现。首先定义一个指向字符串的指针,然后使用循环将字符串中的每个字符依次加入一个新的字符数组中,在加入时,将字符数组的索引从后往前移动。最后输出新的字符数组即可。

#include <iostream>
#include <cstring>
using namespace std;
void reverse(string s) {
  char *start = &s[0];  // 定义指向字符串的指针
  char newStr[100];    // 定义新的字符数组
  int length = strlen(start);
  for(int i = 0; i < length; i++) {
    newStr[length-1-i] = *(start+i);   // 将字符串中的字符加入新的字符数组中
  }
  cout << newStr << endl;
}
int main() {
  string s = "hello world";
  reverse(s);
  return 0;
}

另一种方法是使用STL库中的reverse函数。该函数可以将数组或字符串中的序列反转。需要注意的是,reverse函数的参数必须是迭代器。

#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
void reverse(string s) {
  reverse(s.begin(), s.end());  // 使用STL库中的reverse函数
  cout << s << endl;
}
int main() {
  string s = "hello world";
  reverse(s);
  return 0;
}

在本文中,我们介绍了两种实现字符串倒序输出的方法,分别是使用循环和指针以及使用STL库中的reverse函数。两种方法各有优缺点,可以根据不同的需求选择不同的方法。

  
  

评论区