用C语言写一个函数,将两个字符串连接。

发布网友 发布时间:2022-04-23 10:52

我来回答

5个回答

热心网友 时间:2023-09-14 18:30

1、实际上就是实现strcat这个字符串库函数,在vc自带的crt源码或者linux平台的glibc库中都有strcat的源码,自己可以查阅参考,看看库开发者是如何写代码的,对于学习C语言非常有用。
2、示例
#include <stdio.h>

char *strcat(char *str1, char *str2)
{
if((str1==NULL)||(str2==NULL)) throw "Invalide arguments!";
char *pt = str1;
while(*str1!='\0') str1++;
while(*str2!='\0') *str1++ = *str2++;
*str1 = '\0';
return pt;
}

int main()
{
char a[]= "markyuan";
char b[]= "yyyyy";
char *cat = strcat(a,b);
printf("%s\n",cat);
return 0;
}

热心网友 时间:2023-09-14 18:30

#include<stdio.h>
方法一:如mtcat所说,直接用strcat函数
方法二:编程实现strcat的功能
void main()
{ char s1[80],s2[80];
int i=0,j=0;
puts("input two strings:");
gets(s1);
gets(s2);
while(s1[i]!='\0') i++;
while((s1[i++]=s2[j++])!='\0');
printf("result:%s\n",s1);
}

热心网友 时间:2023-09-14 18:31

char * string(char a[],char b[])
{
int c,d;
c=strlen(a); //计算字符串a的长度
d=strlen(b); //计算字符串b的长度
char p[c+d+1]; // 建立一个足够存放a和b的字符数组
strcpy(p,a); //将a拷进新建的数组中
strcat(p,b); //把b连接在字符串a的后面
return p;
}

热心网友 时间:2023-09-14 18:31

字符串连接:即将字符串b复制到另一个字符a的末尾,并且字符串a需要有足够的空间容纳字符串a和字符串b。
#include<stdio.h>
void mystrcat(char a[],char b[]){//把a和b拼接起来
int i=0,j=0;
while(a[i++]!='\0');
i--;
while(b[j]!='\0'){
a[i++]=b[j++];
}
a[i]='\0';
}
int main()
{
char a[100],b[100];
gets(a);
gets(b);
mystrcat(a,b);
puts(a);
return 0;
}
/*
运行结果:
abc
def
abcdef
*/

热心网友 时间:2023-09-14 18:32

strcat(s1,s2);
合并字符串s1,s2,并将其结果保存在s1中.

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com