为了账号安全,请及时绑定邮箱和手机立即绑定

C语言中怎样交换两个字符串?

C语言中怎样交换两个字符串?

Yii
慕无忌1623718 2019-02-06 16:07:54
C语言中怎样交换两个字符串
查看完整描述

2 回答

?
明月笑刀无情

TA贡献1828条经验 获得超4个赞

字符串a,与字符串b交换。
这样。
.......
char *c;
strcpy(c,a);
strcpy(a,b);
strcpy(b,c);
...........
成功交换。
如果不用库函数,那么也好办。
自己写个串拷贝函数
str_cpy(char *a,char *b) //假设是将b拷贝到a中,注意不是交换
{
while(*b!='\0') //如果字符串b未结束
*(a++)=*(b++);//一位位覆盖进去
*a='\0';//加上结束标志
}
将上面的strcpy替换成这个函数 也成。
测试成功
那么整个程序可以这么写。
void str_cpy(char *a,char *b) //假设是将b拷贝到a中,注意不是交换
{
while(*b!='\0') //如果字符串b未结束
*(a++)=*(b++);//一位位覆盖进去
*a='\0';//加上结束标志
}

void swap(char *a,char *b)
{
char *c;
str_cpy(c,a);
str_cpy(a,b);
str_cpy(b,c);
}
int main()
{
char *str1="123456",*b="654321"
swap(str1,str2);//完成交换
.........
return 0;
}



查看完整回答
反对 回复 2019-03-20
  • 2 回答
  • 0 关注
  • 6848 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信