函数调用时括号嵌套的括号问题

#include <stdio.h>

float fun(int a,int b);

int main(void)
{
    int a=2,b=5,c=8;
    float d;
    d=fun((a--,c--,a+c),(int)fun(a+c,b));
    printf("%.0f\n",d);

    return 0;
}

float fun(int a,int b)
{
    return a+b;
}

注意点

一、fun(a--,c--,a+c)里的(括号里的)逗号运算符:

从左至右依次进行计算,a = 2,c = 8,即a-- =2 、c-- = 8,a = 1、c = 7、a+c =8.

二、 (int)fun(a+c,b)里()的强制类型转换:

(int)表示将float fun(a+c,b)转为int类型,

三、递增递减运算符:

“++”与“--”

首先,这两者运算符的算子必须为变量,不能为常量。

eg1、“5++”或“5--”    (错误)。

其次,a++等于a+1之前的值,a--等于a-1之前的值。

即、 a = 5     那么a++ = 5且之后a = 6

                            a-- = 5且之后a = 4。

而, a = 5            ++a = 6且之后a = 6

                            --a = 4且之后a = 4。

  • 9
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值