• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

这个问题有答案么?

金钱豹 2016-12-30 浏览量:663
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 感觉这个代码编译都不会通过吧,fun有俩入參,但是第一个是(a++,b++b,a+b)这不是一个数吧

    是不是(a++,b++,a+b)啊,这样的话是C

    • 发布于 2016-12-30
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:3
  • 忘记说原理了:

    步骤如下

    入參第一个 逗号表达式最右边的子表达式的值即为返回值。所以,括号里相当于

    a++;b++;入參 =a+b,那么a++ = 2, b++ = 3,入參 = 2+3 = 5


    入參第二个,c=3,带入,++是函数返回后c才加


    所以是5+3 = 8

    • 发布于2016-12-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 題目有問題,所以以下答案都不能選才對

    以上

    • 发布于2016-12-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 编译不能应该能通过,主要是定义fun函数哪里int x误写为intx了,如果改好编译成功则,是考++,以及"逗号"的,最后结果应该是8。

    具体计算是 (a++,b++,a+b)这个逗号表达式的值是a+b,因为在计算a+b时,a++和b++都已经分别执行,所以值为2+3=5

    而在调用fun((a++,b++,a+b),c++)时,是先调用再c++,所以其实是调用fun(3,5)所以最终值为8

    • 发布于2017-01-03
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

这个问题有答案么?