|
发表于 2021-8-2 23:35:02
|
显示全部楼层
边界错误,i 不应该加 1
- $ cat main.c
- #include<stdio.h>
- int main()
- {
- char str1[81], str2[40];
- int i=0,j=0;
- gets(str1); gets(str2);
- while(str1[i]!='\0')
- i++;
- while(str2[j]!='\0'){
- str1[i]=str2[j];
- i++;
- j++;
- }
- str1[i+1]='\0';
- puts(str1);
- return 0;
- }
- $ gcc -g -Wall -o main main.c
- $ ./main
- qwer
- asdf
- qwerasdf▒
- $
复制代码
- #include<stdio.h>
- int main()
- {
- char str1[81], str2[40];
- int i=0,j=0;
- gets(str1); gets(str2);
- while(str1[i]!='\0')
- i++;
- while(str2[j]!='\0'){
- str1[i]=str2[j];
- i++;
- j++;
- }
- //str1[i+1]='\0';
- str1[i]='\0';
- puts(str1);
- return 0;
- }
复制代码 |
|