永发信息网

1:写出程序的输出结果2:函数sub1()与sub2()试图实现的功能是什么?哪个函数可以实现?说明原理?

答案:1  悬赏:80  手机版
解决时间 2021-04-05 05:25
  • 提问者网友:戎马万世
  • 2021-04-04 12:42
1:写出程序的输出结果2:函数sub1()与sub2()试图实现的功能是什么?哪个函数可以实现?说明原理?
最佳答案
  • 五星知识达人网友:话散在刀尖上
  • 2021-04-04 14:09
sub1函数,将自己得到的两个参数借助t交换了一下,最终保证两个参数x要小于等于y,但函数执行结束后,这两个参数被舍弃,并不能返回调用者,在主函数中看来没起什么作用。
sub2用给定的两个地址进行操作,交换的不是地址而是地址指向的单元的内容,这样由于主程序中给出了自己变量的地址,则子程序交换的是主程序给出变量的内容(用地址可以访问主程序给出变量的存储区),真正实现了主程序中变量值的改变。
所以运行结果是:
sub1(x,y); //x=19,y=15,z=17
sub2(&x,&y); //x=15,y=19,z=17
sub2(&y,&z); //x=15,y=17,z=19
printf("%d %d %d\n",x,y,z); //输出:15 17 19
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯