21xrx.com
2025-04-17 17:54:54 Thursday
文章检索 我的文章 写文章
C++指针实现字符串逆序输出
2023-07-11 22:35:17 深夜i     37     0
C++ 指针 字符串 逆序 输出

C++是一门面向对象编程语言,具有强大的指针概念,能够适应不同的编程需要。在C++中,可以通过指针实现字符串逆序输出,这是一种十分常见且实用的编程技巧。

实现字符串逆序输出的方法很简单,只需要先将字符串中的每一个字符存储到一个指针数组中,然后再将指针数组中的元素逆序输出即可。下面是一个示例代码:

#include<iostream>
#include<cctype>
using namespace std;
int main()
{
  char str[100], *ptr[100], *p;
  int i, j, len;
  cout << "Enter a string: ";
  fgets(str, 100, stdin);
  len = strlen(str);
  p = str;
  for (i = 0; i < len; i++) {
    if (*(p + i) == ' ') {
      *(p + i) = '\0';
      ptr[j] = p + i + 1;
      j++;
    }
  }
  ptr[j] = p + i + 1;
  cout << "Reversed String: ";
  for (i = j; i >= 0; i--) {
    cout << ptr[i] << " ";
  }
  cout << endl;
  return 0;
}

首先,在代码中定义了一个字符串变量str、一个指针数组ptr和一个指针p。输入字符串后,使用指针p指向该字符串,遍历字符串中的每一个字符,当遇到空格符时,将其转换为'\0'并将其后一个字符的地址存储到指针数组中,最后将字符串中前一个字符的地址存储到指针数组的最后一个元素中。

接下来,使用for循环从指针数组的最后一个元素开始遍历,直到指针数组的第一个元素。在遍历过程中,使用cout将指针数组中每个元素指向的字符输出。这样,指针数组中存储的字符就被逆序输出了,字符串逆序输出的目的也就达到了。

总之,使用指针在C++中实现字符串逆序输出是一种简单而有效的编程方法,它可以提高程序的效率和可读性,同时也拓宽了程序员的编程思路。

  
  

评论区

请求出错了