w-haiS 2019-04-14 20:27 采纳率: 64.3%
浏览 237
已采纳

指针传参的函数写在cout中失去了指针传参的特性?

今天一个同学问我一个问题,就是这个指针传参的函数调用时写在cout中的问题,

    #include<iostream>
    using namespace std;
    int f(int *a,int *b,int *c)
    {
        int t=0;
        if(*a<*b){t=*a,*a=*b,*b=t;}
        if(*a<*c){t=*a,*a=*c,*c=t;}
        if(*b<*c){t=*b,*b=*c,*c=t;}
        return *a;
    }
    int main()
    {
        int x,y,z;
        cin>>x>>y>>z;
        cout<<f(&x,&y,&z)<<" "<<x<<" "<<y<<" "<<z;
        return 0;
    }

这个函数最终运行的结果是3 1 2 3 ,
因此我怀疑是指针传参没有发挥自己的特点
有哪位大哥讲解一下啊

  • 写回答

2条回答 默认 最新

  • w-haiS 2019-04-16 15:28
    关注

    参考了谭浩强的一本书,说的是cout是右结合的,既在cout中存在运算时先进行右边的运算,输出时从左往右输出

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

报告相同问题?

悬赏问题

  • ¥15 目详情-五一模拟赛详情页
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line