为了账号安全,请及时绑定邮箱和手机立即绑定

为什么这样提交显示错误?编辑器可以运行啊

#include <stdio.h>

#include <string.h>

int main()

{

    char s1[100]="";

    char s2[]="我爱,";

    char s3[]="慕课网";

    /*在以下补全代码*/

    strcat(s1,strcat(s2,s3));

    

    printf("%s\n",s1);

    return 0;    

}

求大神解答

正在回答

3 回答

发现问题了没有  s1里有个空格 所以用strcpy(s1,s2)把空格覆盖掉 然后再strcat拼接

1 回复 有任何疑惑可以回复我~
#1

慕虎6185129 提问者

非常感谢!
2016-10-28 回复 有任何疑惑可以回复我~

我知道答案上是对的    可是我这样写不对吗?

0 回复 有任何疑惑可以回复我~
#1

qq_魴肆d青春_0

我觉得应该是左边例子中提到的第四点,要有足够的空间来容纳要复制的字符串,strcat(s2,s3)在这里是错误的。s2定义时大小就是"我爱,"的长度,已经满了,没有空间容纳s3,所以要先strcpy(s1,s2),s1长度100,足够进行拼接。
2016-11-22 回复 有任何疑惑可以回复我~

#include <stdio.h>
#include <string.h>
int main()
{
    char s1[100]="";
    char s2[]="我爱,";
    char s3[]="慕课网";
    /*在以下补全代码*/
    strcpy(s1,s2);
   strcat(s1,s3);
   
    printf("%s\n",s1);
    return 0;   
}

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么这样提交显示错误?编辑器可以运行啊

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信