C语言 不用strcat函数,将两个字符串连接起来

因本人才疏学浅,见识浅薄,有不当之处望指正,谢谢!

不用strcat,把两个字符串连接起来

功能:将字符数组2或者字符串常量连接到字符串1的后面

注意:连接的结果放在字符数组1中,因此,字符数组1的长度必须足够大。在连接时,字符数组1原来的结束标志’\0’会被删除,只在连接后的新字符串最后保留一个’\0’;

思路:通过strlen知道字符串1的实际长度(不包含’\0’);
删除’\0’,通过循环将字符串2放到字符串1后面
(温馨提示:可以左右移动)

#include <stdio.h>
#include <string.h>
#define N 200
#define M 100
int main(void)
{
	char str1[N],str2[M];
	int cou1 = 0,cou2 = 0;// 初始化下标
	printf("input string1:\n");// 提示输入字符串1
	gets(str1);// 输入字符串1
	printf("input string2:\n");// 提示输入字符串2
	gets(str2);// 输入字符串2
	for(cou1 = strlen(str1); str2[cou2] != '\0'; cou2++)
		str1[cou1 ++] = str2[cou2];
	str1[cou1] = '\0';// 对处理过的字符串加上结束标志'\0',没有'\0'就是字符数组不是字符串
	printf("new string is:\n%s\n",str1);// 输出处理过的字符串
	return 0;
}

附图:
在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值