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

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


慕无忌1623718
浏览 6869回答 2
2回答

明月笑刀无情

字符串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;}
打开App,查看更多内容
随时随地看视频慕课网APP