笨不溜秋蛋 2022-06-27 10:53 采纳率: 100%
浏览 30
已结题

关于函数指针之间的传递与输出

img

img


为什么第一个程序运行结果是5 9第二个就是9 5,我的想法是执行一个被调用函数时,形参的值发生改变但不会改变实参的值,这里为什么第二个程序就改变了原来实参值呢

  • 写回答

2条回答 默认 最新

  • it_hao528 2022-06-27 11:31
    关注

    1、由于形参的值是不可进行修改的,第一个a和b代表的是地址的值,这里不能直接进行赋值修改。所以第一个输出 5 9
    2、形参的地址指针可以进行修改,第二个的x和y代表的是x和y的地址指针,可以进行修改,交换之后,x指向y的地址,y指向x的地址,而x和y本身的地址并没有改变,由于值是存在地址里边的,所以第二个输出 9 5

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

报告相同问题?

问题事件

  • 系统已结题 7月5日
  • 已采纳回答 6月27日
  • 创建了问题 6月27日