我不用strcat,直接先输入2个字符串给s1和s2。然后将s2的字符一个个的复制到s1中字符串的后面,直到s2碰到'\0'为止。但为什么非要最后手动加个'\0'?不然输出s1会有乱码。我理解的是,s1原先在放入的字符串后面应该默认有'\0',我将s2中的字符串(不带'\0')连接过去后s1余下的位置应该还保留原先的'\0',为何还要手动输入?
请明白人指导。

展开全部
收起
1回答
提交回答
  • 至过去的我

    2044人对此回答表示赞同

    我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多>
    发布于
  • 安娜女王

    17人对此回答表示赞同

    首先:“s1原先在放入的字符串后面应该默认有'\0',我将s2中的字符串(不带'\0')连接过去后s1余下的位置应该还保留原先的'\0'”

    你这个理解是错误的。

    '\0'实际上就是一个字符,对应的十六进制值是0x00;

    也就是说,char s1[255] = "abc";
    实际存储情况是: {'a'
    展开
    17
    0回复
    发布于 6年前

    评论(0)

    收起评论

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
咨询热线

13312967497

扫码添加业务即可随时咨询 还可领取小程序推广攻略

业务咨询: 13312967497
扫码咨询

扫码咨询套餐

回到顶部