心丶静 2021-12-18 20:22 采纳率: 50%
浏览 27
已结题

哪位能解读一下,这个strcat函数,循环里面的条件不会

char* mycat(char dst, const char src)

{

while (dst[strlen(dst)] = *src++)

;

return dst;

}

  • 写回答

2条回答 默认 最新

  • CSDN专家-link 2021-12-18 20:23
    关注

    就是用while循环写赋值语句
    不过我觉得代码是有问题的。除非dst这个字符串已经将所有字符都初始化为0
    strlen获得dst串的长度,dst[strlen(dst]就是字符串有效字符后的第一个字符。相当于我们定义数组char a[10]时,给a[10]元素赋值。
    每次赋值后,strlen(dst)就会不断增长,从而不断在dst尾部将src的每个字符复制过来

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月19日
  • 已采纳回答 12月19日
  • 创建了问题 12月18日

悬赏问题

  • ¥15 拓扑学,凸集,紧集。。
  • ¥15 如何扩大AIS数据容量
  • ¥15 单纯型python实现编译报错
  • ¥15 c++2013读写oracle
  • ¥15 c++ gmssl sm2验签demo
  • ¥15 关于模的完全剩余系(关键词-数学方法)
  • ¥15 有没有人懂这个博图程序怎么写,还要跟SFB连接,真的不会,求帮助
  • ¥15 PVE8.2.7无法成功使用a5000的vGPU,什么原因
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音