字符串反转

#include<iostream>
#include<string.h>
using namespace std;

char *reverse5(char* str,int len)
{
    if(len<=1)
        return str;
        
    char t=*str;
    *str=*(str+len-1);
    *(str+len-1)=t;

    return(reverse5(str+1,len-2)-1);
}

char* strrev1(const char* str)
{
    int len=strlen(str);
    char*tmp=new char[len+1];
    
    strcpy(tmp,str);
    for(int i=0;i<len/2;i++)
    {
        char c=tmp[i];
        tmp[i]=tmp[len-i-1];
        tmp[len-i-1]=c;
    }
    return tmp;
}

int main(int argc,char *argv[])
{
    char str[]="123456";
    char *str5=strrev1(str);
    cout<<str5<<endl;
    char* str6=reverse5(str5,strlen(str5));
    cout <<str6<<endl;
    return 0;
}

 

posted @ 2017-01-11 10:54  邹大佳  阅读(93)  评论(0编辑  收藏  举报