谦余庆 2023-08-23 20:32 采纳率: 100%
浏览 14
已结题

这个为什么是1和2呢?

这个为什么是1和2而不是1和1呢?第二个n是后置加加,按理来说应该是1和1呢呀,有哪位侠士能帮忙详细解答一下。

img

  • 写回答

3条回答 默认 最新

  • 影子身后 2023-08-23 21:23
    关注

    ++n 会先把 n 的值加一,然后传递给函数 f。
    f 函数会接收到新的值,然后把它赋给了静态变量 n,但函数返回的值没有被使用。
    printf 打印了递增后的 n 值,即 1。

    n++ 会先传递 n 的当前值给函数 f,然后再把 n 的值加一。
    f 函数会接收到 n 的当前值,并将它赋给了静态变量 n,但函数返回的值没有被使用。
    printf 打印了 n 的当前值,即 1。

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

报告相同问题?

问题事件

  • 系统已结题 8月31日
  • 已采纳回答 8月23日
  • 创建了问题 8月23日