用C++实现字符的逆转

简介: 用C++实现字符的逆转
#include <iostream>
#include <Windows.h>
#include <string.h>
using namespace std;
void reverse(unsigned char *a)
{
  unsigned char *p1=a;
  unsigned char tmp[1024];
  unsigned char *p2;
  unsigned int len=strlen((char *)a);
  p2=len+tmp;//传的是地址,等式左边不能是指针
  *p2--='\0';
  while(*p1)
  {
    if(*p1<0x80)
    {
      *p2--=*p1++;
    }else
    {
      *(p2-1)=*p1++;
      *p2=*p1++;
      p2=p2-2;
    }
  }
  for(int i=0;i<len;i++)
  {
    a[i]=tmp[i];
  }
}
int main(void)
{
  unsigned char str[1024];
  cout<<"请输入你要转换的字符:";
  cin>>str;
  reverse(str);
  cout<<"转换的结果为:"<<str<<endl;
  system("pause");
  return 0;
}

运行结果:


1ba95e6a4dd24126a1d8208024468d8f.png


相关文章
|
20天前
|
存储 算法 编译器
【C++ 字符数组的模板特化】面向字符串的C++模板特化:理解与实践
【C++ 字符数组的模板特化】面向字符串的C++模板特化:理解与实践
62 1
|
20天前
|
对象存储 C++
在C++语言中字符串流
在C++语言中字符串流
19 2
|
20天前
|
存储 C++ 索引
C++ string容器-字符存取讲解
C++ string容器-字符存取讲解
34 0
|
20天前
|
编译器 C++
c++关键字与三字符组
c++关键字与三字符组
26 0
|
20天前
|
存储 C++
c++字符和不常见常量
c++字符和不常见常量
31 0
|
8月前
|
C语言 C++
C/C++字符函数和字符串函数模拟实现与详解————长度不受限制的字符串函数
C/C++字符函数和字符串函数模拟实现与详解————长度不受限制的字符串函数
29 0
|
20天前
|
C++
c++:string相关的oj题(把字符串转换成整数、344.反转字符串、387. 字符串中的第一个唯一字符、917. 仅仅反转字母)
c++:string相关的oj题(把字符串转换成整数、344.反转字符串、387. 字符串中的第一个唯一字符、917. 仅仅反转字母)
56 0
|
15天前
|
数据处理 C++
C++程序字符串流
C++程序字符串流
22 2
|
15天前
|
存储 C++ 索引
C++程序字符数组:深入理解与实践
C++程序字符数组:深入理解与实践
23 2
|
20天前
|
存储 编译器 Linux
标准库中的string类(中)+仅仅反转字母+字符串中的第一个唯一字符+字符串相加——“C++”“Leetcode每日一题”
标准库中的string类(中)+仅仅反转字母+字符串中的第一个唯一字符+字符串相加——“C++”“Leetcode每日一题”