请编写一个C函数,将一个字符串逆序

来源:互联网 发布:append java 编辑:程序博客网 时间:2024/06/05 20:06

目前有两种思路,一个是申请一片辅助空间,然后将原字符串逆向拷贝到辅助空间,然后输出;另一种是原地逆序,不需要额外的辅助空间,方法就是字符串首尾交换。


#include <stdio.h>#include <string.h>char* str_reverse(char* str){    int n = strlen(str) / 2;    int i = 0;    char tmp = 0;    for(i = 0; i < n; i++)    {        tmp  = str[i];        str[i] = str[strlen(str)-i-1];        str[strlen(str)-i-1] = tmp;    }    return str;}int main(){    char s[] = "hello world!";    printf("str_reverse(s) = %s\n", str_reverse(s));    return 0;}
0 0
原创粉丝点击