gpt4 book ai didi

c - 为什么变量 i 在循环中没有递增?

转载 作者:行者123 更新时间:2023-11-30 16:21:18 26 4
gpt4 key购买 nike

这里有什么问题吗?我试图连接两个字符串。

这是完整的代码。仅打印第一个字符串。

#include<stdio.h>
main()
{
char s[100],s2[100];
printf("Enter a String\n");
scanf("%s",&s);
printf("Enter second String\n");
scanf("%s",&s2);
int i=strlen(s);
//printf("%d",i);
int j;


for(j=0;s2[j]!='\0';++j)
{
i+=1;
s[i]=s2[j];
}

printf("%s",s);
}

最佳答案

正如已经评论过的,你跳过了 s 的终止符,更改为

for(j=0;s2[j]!='\0';++j)
{
s[i]=s2[j];
i+=1;
}
s1[i]='\0'; // terminated after concatenation

你应该在那里。请记住,如果不检查结果字符串的长度,则可能会溢出 s[100] 数组。

关于c - 为什么变量 i 在循环中没有递增?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54942352/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com