读书人

关于函数strrev的兑现

发布时间: 2012-12-31 11:57:52 作者: rapoo

关于函数strrev的实现

#include <syslib.h>
#include <string.h>

main()
{
char *s="Welcome To Beijing";

clrscr();
textmode(0x00); // 6 lines per screen

printf("%s\n%s",s,strrev(strdup(s)));


getchar();
return 0;
}

上面这段代码是我在网上看到的,本来是想看看关于strrev函数的一些代码,但是我在VC6.0上运行为什么不行,谁能帮我看看。谢谢了
[解决办法]
strrev不是标准函数。估计是TC 2.0下的吧。

/**
* @file strrev.c
* @brief
*/

#include <stdio.h>
#include <string.h>

char *strrev(char *s)
{
char *h, *t;
char c;

h = s;
t = s + strlen(s) - 1;
printf("%h=%p,t=%p\n", h, t);
while (h < t) {
c = *h;
*(h++) = *t;
*(t--) = c;
}

return s;
}

int main(int argc, char *argv[])
{

char s[] = "012345678";

printf("[%s]\n", strrev(s));
return 0;
}

读书人网 >C语言

热点推荐