1.2 Implement a function void reverse(char* str) in C or C++ which reverses a nullterminated string.

最初思路:先遍历一遍获得长度len, 第二次遍历只要遍历一半长度,将索引 k 位置元素与 len-1-k 位置元素互换

void reverse(char* str) {
    int len = 0, i, k; 
    // first traversal get length
    for (i = 0; *(str+i) != NULL; i++) 
        len++;
    // swap item
    for(k = 0; k < len/2; k++) {
        int temp = *(str+k);
        *(str+k) = *(str+len-1-k);
        *(str+len-1-k) = temp;
    }    
}

 

 

 

2015-09-16

posted @ 2015-09-16 19:30  whu.yt  阅读(203)  评论(0编辑  收藏  举报