编辑代码

#include <stdio.h>
char* strC(char *str1, char *str2);

// #include<string.h>
// P261 常用函数
/*
strlen(str)
strcpy(str1,str2) // str2拷贝到str1
strcmp(str1,str2) // str1与str2比较
strcat(str1,str2) // str2连接到str1
// 限制大小n个字符
strcpy(str1,str2,n)
strcmp(str1,str2,n)
strcat(str1,str2,n)
*/

int main () {
    char str1[20];
    char str2[10];
    char *res = NULL;
    printf("请输入第一个字符串:\n");
    // fgets 会读满 第二个参数的大小
    fgets(str1, 10, stdin);
    while(getchar()!='\n');
    printf("请输入第二个字符串:\n");
    fgets(str2, 4, stdin);
    res = strC(str1, str2);
    printf("\n");
    printf("%s",res);
	return 0;
}

// str1被连接函数;str2
char* strC(char *str1, char *str2){
    char *strStar = str1; // 记录地址
    // 找到str1起始不为\0的位置
    while(*str1 != '\0'){
        str1++;
    }
    // 开始将str2的字符连接到str1之后
    while(*str2 != '\0'){
        *str1 = *str2;
        str1++;
        str2++;
    }
    *str1 = '\0';
    return strStar;
}