在UTF8(linux)下,逆置汉字字符串
Posted zzdoit
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在UTF8(linux)下,逆置汉字字符串相关的知识,希望对你有一定的参考价值。
#include <stdio.h> int main() { char c[]="我是如此热爱编程!"; int index=0,min=0,max; while(c[index]) { index ++; } max = index -1; while(max > min) { char tmp = c[min]; c[min]=c[max-2]; c[max-2]=tmp; tmp = c[min+1]; c[min+1]=c[max-1]; c[max-1]=tmp; tmp = c[min+2]; c[min+2]=c[max]; c[max]=tmp; max -=3; min +=3; } printf("%s\n",c); return 0; }
运行结果:
[email protected]:~$ swop
!程编爱热此如是我
在utf8模式下,一个汉字占用3个byte,在gbk下,一个汉字占用2个byte
以上是关于在UTF8(linux)下,逆置汉字字符串的主要内容,如果未能解决你的问题,请参考以下文章