字符串逆置之逆置中文汉字(C语言中文简体汉字变为繁体,发生错误)

字符串逆置之逆置中文汉字:

因为C语言中char占一个字节而汉字占两个或三个字节(标准不同),如果按照一个字节去逆置汉字,汉字将会有可能发生错误,因此必须整体逆置汉字占的字节,才能正确输出。

#include<stdio.h>
#include<string.h>
#define N  100
int main(void){
    char str[N]={0};
    char str2[N];
    gets(str);
    int len;
    int i,j;
    len = strlen(str); 
    for (i = 0,j=len-2; i < len; i+=2,j-=2)
    {
       str2[j]=str[i];
       str2[j+1]=str[i+1];
    } 
	puts(str2);
	return 0; 
}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

扎心小指针0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值