将两个字符串连接起来,不要用strcat函数
思路:由键盘输入两个字符串再将这两个字符串放入另外的一个数组里边#include<stdio.h>#include<string.h>int main(){char str1[50], str2[50];char string[100] = {0};int i, j=0, m;printf("请输入两个字符串:\n");gets_s(str1);gets_s(str2);/
·
思路:由键盘输入两个字符串再将这两个字符串放入另外的一个数组里边
#include<stdio.h>
#include<string.h>
int main()
{
char str1[50], str2[50];
char string[100] = {0};
int i, j=0, m;
printf("请输入两个字符串:\n");
gets_s(str1);
gets_s(str2);//输入两个字符串
for (i = 0; str1[i] != '\0'; i++)
{
string[j] = str1[i];//将第一个字符串放入string
j = j + 1;
}
for (m = 0; str2[m] != '\0'; m++)
{
string[j] = str2[m];//将第二个字符串放入string
j++;
}
puts(string);//输出连接后的字符串
return 0;
}

在这个过程中,出现了异常

1..问题:for循环无法停止导致数组满溢,判断循环的执行条件有误。
2.原因:对于字符串结束的标志认知错误,是‘\0’不是‘\n’
3.解决:for (i = 0; str1[i] != '\n'; i++)修改为for (i = 0; str1[i] != '\0'; i++)
更多推荐



所有评论(0)