0
点赞
收藏
分享

微信扫一扫

C语言字符串逆排序

方法一:
缺点:需要提前定义大一点的数组

//参数:原始字符串,目标字符串
void reverseStr(char *str,char *dist)
{
int i=0;
char *p=str;
while(*p)
{
p++;
}
while((p-str>0))
{
p--;
dist[i++]=*p;
}
}
int main()
{
char *str="123";
char dist[10]={0};
reverseStr(str,dist);
cout<<dist<<endl;
return 0;
}

方法二:
缺点:需要申请并释放

//参数:原始字符串,目标字符串
void reverseStr(char *str,char **dist)
{
if(str==NULL)
return ;
int i=0;
char *p=str;
*dist=new char[strlen(str)+1];
memset(*dist,0,strlen(str)+1);
while(*p)
{
p++;
}
while((p-str>0))
{
p--;
(*dist)[i++]=*p;
}
(*dist)[i]='\0';
}

int main()
{
char *str="123";
char *dist={0};
reverseStr(str,&dist);
cout<<dist<<endl;
delete []dist;
dist=NULL;
return 0;
}


举报

相关推荐

0 条评论