1. 实现含有中文字符的字符串逆转,如: “我是小萌新” 转换成“新萌小是我”(指针项目练习1)

简介: 1. 实现含有中文字符的字符串逆转,如: “我是小萌新” 转换成“新萌小是我”(指针项目练习1)

1. 实现含有中文字符的字符串逆转,如: “我是小萌新” 转换成“新萌小是我”

#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连接两个tmp+len的地址,所有说改变p2的值的话,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;
}


相关文章
|
6月前
|
算法 C语言
通过指针引用字符串
通过指针引用字符串
60 1
|
6月前
|
C语言
C语言指针——练习
C语言指针——练习
|
2月前
|
存储 人工智能 C语言
C语言程序设计核心详解 第八章 指针超详细讲解_指针变量_二维数组指针_指向字符串指针
本文详细讲解了C语言中的指针,包括指针变量的定义与引用、指向数组及字符串的指针变量等。首先介绍了指针变量的基本概念和定义格式,随后通过多个示例展示了如何使用指针变量来操作普通变量、数组和字符串。文章还深入探讨了指向函数的指针变量以及指针数组的概念,并解释了空指针的意义和使用场景。通过丰富的代码示例和图形化展示,帮助读者更好地理解和掌握C语言中的指针知识。
|
6月前
|
C语言 C++
详解C指针+小型计算器项目
详解C指针+小型计算器项目
53 5
|
5月前
|
C++
指针习题练习
指针习题练习
21 0
|
6月前
|
存储 C++
C++程序中的字符串与指针
C++程序中的字符串与指针
58 2
|
6月前
|
C语言
C语言指针与字符串
C语言指针与字符串
35 0
|
6月前
指针应用基础练习
指针应用基础练习
40 0
|
6月前
|
存储 人工智能
指针的应用练习(数组与指针的关系)
指针的应用练习(数组与指针的关系)
44 0
|
6月前
|
安全 C语言
指针与字符串:C语言中的深入探索
指针与字符串:C语言中的深入探索
105 0