C语言中交换两个字符串需要借助strcpy函数或者使用自定义交换函数进行交换
如交换a,b数组中的字符串代码:
char a[10] = "abed", b[10] = "efg", t[10];strcpy(t, a);//a复制给tstrcpy(a, b);//b复制给astrcpy(b, t);//t复制给b
附:strcpy函数详情
原型声明:
char *strcpy(char* dest, const char *src);
头文件:
#include string.h 和 #include stdio.h
功能:把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间
说明:src和dest所指内存区域不可以重叠且dest必须有足够的空间来容纳src的字符串.返回指向dest的指针.
先包含头文件"string.h"
然后直接调用库函数strcpy
具体操作:
利用strcpy()函数.
char?a[10]?=?"abed",?b[10]?=?"efg",?t[10];
strcpy(t,?a);//a复制给t
strcpy(a,?b);//b复制给a
strcpy(b,?t);//t复制给b
函数功能是字符串复制,将第一个参数指定的字符串复制到第二个参数指定的位置
两个参数都是字符串首地址.
使用strcpy需要 #includestring.h
不同的情况做法是不同的.
#includestdio.h
void?strexchg(char?*a,?char?*b){
char?c;
while(*a?*b){
c=?*a;?*a?=?*b;?*b?=?c;
a++;?b++;
}
if(*a)
do?*++a?=?*++b;?while(*b);
else?if(*b)
do?*++b?=?*++a;?while(*a);
int?main(){
printf("Before?Exchange?:\n\tString?A?is?\"%s\"\n\tString?B?is?\"%s\"\n",a,b);
strexchg(a,b);
printf("After?Exchange?:\n\tString?A?is?\"%s\"\n\tString?B?is?\"%s\"\n",a,b);
return?0;
void?strexchg(char?**a,?char?**b){
char?*c;
c=*a;?
*a=*b;
*b=c;
char?*a="String?A";?char?*b="String?B";?
以上就是土嘎嘎小编为大家整理的c语言用函数交换两字符串相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!