c语言(字符串连接)
问题描述:从键盘输入两个字符串,输入两个字符串连接的结果
例:从键盘输入 abc def
输出 abcdef
代码如下:
#include <stdio.h>
#define N 100
char *my_strcat(char *dest,char *src);
int main()
{
char str1[N];
char str2[N]; //定义两个字符数组
char *str;
gets(str1);
gets(str2); //从键盘输入两个字符串
str = my_strcat(str1,str2);
puts(str);
return 0;
}
char *my_strcat(char *dest,char *src) //函数功能:连接两个字符串
{
char *ret = dest; //定义一个ret来保存的dest
while(*dest != '\0')
{
dest++;
}
*dest = *src; //将第二个数组的首元素赋值给'\0'
while(*src != '\0')
{
*dest++ = *src++; //将src原来第二个元素赋值给第一个数组
}
*src++ = '\0';
return ret; //返回ret(也就是返回数组dest的首地址)
}