将两个字符串合并(函数:strcat)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include
#include


using namespace std;

//将两个字符串合并

void mystrcat1(char str1[],char str2[],char strn[]);
void mystrcat2(char *str1,char *str2, char *strn);
void mystrcat3(char *str1,char *str2,char *strn);
void mystrcat4(char str1[],char str2[],char strn[]);

int main()
{
static char str1[] = "Welcome to ";
static char str2[] = "China!";
// static char str3[] = "China!BeiJing!";
char strn[30];

// strcat(str1,str2);
// cout << str1 << endl;

// strncat(str1,str3,9);
// cout << str1 << endl;


// mystrcat(str1,str2,strn);
// cout << strn << endl;

// mystrcat2(str1,str2,strn);
// cout << strn << endl;

// mystrcat3(str1,str2,strn);
// cout << strn <
mystrcat4(str1,str2,strn);
cout << strn << endl;



return 0;
}

void mystrcat1(char str1[], char str2[],char strn[])
{
int i = 0,j = 0;
while(str1[i] != '\0')
{
strn[i] = str1[i];
i++;
}

while(str2[j] != '\0')
{
strn[i+j] = str2[j];
j++;
}
strn[i+j] = '\0';
}

//void mystrcat2(char *str1,char *str2,char *strn)
//{
// while(*str1 != '\0')
// {
// *strn = *str1;
// ++str1;
// ++strn;
// }

// while(*str2 != '\0')
// {
// *strn = *str2;
// ++str2;
// ++strn;
// }
// *strn = '\0';
//}

void mystrcat2(char *str1,char *str2,char *strn)
{
while(*str1 != '\0')
{
*strn++ = *str1++;
}

while(*str2 != '\0')
{
*strn++ = *str2++;
}
*strn = '\0';
}

void mystrcat3(char *str1,char *str2,char *strn)
{
int i = 0,j = 0;
while(str1[i] != '\0')
{
strn[i] = str1[i];
i++;
}

while(str2[j] != '\0')
{
strn[i+j] = str2[j];
j++;
}

strn[i+j] = '\0';
}

void mystrcat4(char str1[], char str2[], char strn[])
{
while(*str1 != '\0')
{
*strn++ = *str1++;
}

while(*str2 != '\0')
{
*strn++ = *str2++;
}

*strn = '\0';
}

相关文档
最新文档