今天你麦麦了吗 2023-05-05 22:32 采纳率: 50%
浏览 22
已结题

可以分析一下这条c语句的执行顺序吗?

这是一个字符串的复制的一个代码。
最关键的一句就是那个while循环。执行语句是空语句,条件语句是一个赋值语句(实现依次赋值,直到最后一个是\0)
我想问问这个first++赋值给secend++的时候,是先解引用还是先加加?
赋值完了之后再++是先second++还是先first++?或者同时?
这句话的执行的详细的顺序到底是什么呢?
还有如果单拎出来一个*first++那他应该是先进行解引用操作,还是先加一操作呢?
在分析这个++时候应该如何去看呢?

img

  • 写回答

2条回答 默认 最新

  • Huazie 全栈领域优质创作者 2023-05-05 22:43
    关注
    // *first++  因为 ++在后,所以表达式结果 相当于 *first, 然后 first 移动到下一个地址
    // 同样 *second++ 也是一样, 所以 实际上相当于
    
    *second = *first;
    first++;
    second++;
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月13日
  • 已采纳回答 5月5日
  • 修改了问题 5月5日
  • 创建了问题 5月5日

悬赏问题

  • ¥15 微信小程序web-view嵌套H5页面IOS左滑会出现相同的页面,有什么解决方法吗?
  • ¥60 如何批量获取json的url
  • ¥15 comsol仿真压阻传感器
  • ¥15 Python线性规划函数optimize.linprog求解为整数
  • ¥15 llama3中文版微调
  • ¥15 pg数据库导入数据序列重复
  • ¥15 三分类机器学习模型可视化分析
  • ¥15 本地测试网站127.0.0.1 已拒绝连接,如何解决?(标签-ubuntu)
  • ¥50 Qt在release捕获异常并跟踪堆栈(有Demo,跑一下环境再回答)
  • ¥30 python,LLM 文本提炼