纪念逝去的岁月——C/C++字符串反转

几年前,我还不会写这个

输入:hello world

输出:dlrow olleh

代码

 1 #include <stdio.h>
 2 #include <string.h>
 3 
 4 void cvtstring(char * pStr)
 5 {
 6     if(NULL == pStr)
 7     {
 8         return ;
 9     }
10     int iLen = strlen(pStr);
11     int iStart = 0, iStop = iLen / 2;
12     int i  = 0;
13     for(i = iStart; i < iStop;i++)
14     {
15         char x = pStr[i];
16         /*printf("x = %c\n", x);*/
17         pStr[i] = pStr[iLen - 1 - i];
18         pStr[iLen - 1 - i] = x;
19     }
20 }
21 
22 int main()
23 {
24     char p[100] = {"hello world"};
25     printf("src : [%s]\n", p);
26     cvtstring(p);
27     printf("dst : [%s]\n\n", p);
28 
29     printf("src : [%s]\n", p);
30     cvtstring(p);
31     printf("dst : [%s]\n", p);
32 
33     return 0;
34 }

编译

$ g++ -o cvtstring cvtstring.cpp

运行

$ ./cvtstring 
src : [hello world]
dst : [dlrow olleh]

src : [dlrow olleh]
dst : [hello world]

再见……

 

posted @ 2015-03-03 17:37  fengbohello  阅读(177)  评论(0编辑  收藏  举报