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

字符串函数

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

为什这样写,没有输出?

正在回答

2 回答

注意课程6-8节的第4点。

strcat strcpy 这样的字符串操作函数应该注意:第一个参数处必须要有足够大的空间来容乃操作后的字符串。

s1可以容纳100个元素,s2和s3的空间都只能含有4个元素,所以不应写在第一个参数处。

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

浮沉随浪 提问者

非常感谢!
2015-08-29 回复 有任何疑惑可以回复我~

http://img1.sycdn.imooc.com//55dfb47300018bc903160138.jpg代码本身没有问题,我用dev cpp是可以显示的,建议多刷新网页,或者重新编译一下试试,

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

onemoo

代码是有问题的,第9行调用strcat时将s2作为第一个参数,存在严重的安全隐患。
2015-08-28 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926210    人
  • 解答问题       20797    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

字符串函数

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