可以直接使用库函数strrev(), 需要包含头文件string.h
#include <stdio.h>strrev不是C语言的函数,自己用指针来实现也非常简单。
char *_strrev(char *str)
{
char *f = str, *l = str + strlen(str), ch;
while(f<l) {ch = *f; *f++ = *(--l); *l = ch;}
return str;
}
wchar_t *_wcsrev(wchar_t *wcs)
{
wchar_t *f = wcs, *l = wcs + wcslen(wcs), ch;
while(f<l) {ch = *f; *f++ = *(--l); *l = ch;}
return wcs;
}
对于多字符的汉字的调换次序,要想得到正确的结果,必须先将多字符转换为宽字符,调换次序后再转化为多字符。