C++自己编写一个具有strcat函数功能的函数 将两个字符串连接起来 结果取代第一个字符串 帮忙看下哪里错了

2025-03-23 20:35:21
推荐回答(1个)
回答1:

#include
#include  // strlen在这个头文件里
using namespace std;
void my_strcat(char s1[], char s2[])
{
int m, n,i;
m = strlen(s1);
n = strlen(s2);
for (i = 0; i <= n - 1; i++)
{
s1[m + i] = s2[i];
}
s1[m + n] = '\0';
}
int main()
{
char s1[100] = { 'a','b','c','d','e', '\0' }, s2[] = { 'k','j','g','f','\0' }; /* 这么定义字符串,strlen遇到\0结束,且不能有' a'这样的字符,空格和a是两个字符。*/
my_strcat(s1, s2);
cout << s1 << endl;
return 0;
}