字符串反转

使用C/C++语言写一个函数,实现字符串的反转,要求不能用任何系统函数,且时间复杂度最小。
函数原型是:char *reverse_str(char *str)
#include <stdio.h>

char* reverse_str(char* str)
{
    if(NULL == str)
        return str;
    char *begin;
    char *end;

    begin = end = str;

    while(*end != '\0'){
        end++;
    }
    --end;
    
    char temp;
    while(begin < end){
        temp = *begin;
        *begin = *end;
        *end = temp;
        begin++;
        end--;
    }
    return str;
}

int main(){
    char str[] = "abcdef123";
    printf("%s",reverse_str(str));

    return 0;
}

 

posted @ 2015-08-09 22:54  fangying  阅读(203)  评论(0编辑  收藏  举报