博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
调用函数时参数传递的单向性分析
阅读量:5011 次
发布时间:2019-06-12

本文共 324 字,大约阅读时间需要 1 分钟。

 

解析1 x, y, z被定义成全局变量,但是在调用函数void p(int *x, int y)时,传递过来的实参存在栈空间里,相当与从原来实参那里复制一份,在函数调用结束时要释放这些参数,所以不会改变原来的实参,这就是调用函数时参数的传递是单向的。2 由于z不是通过函数调用传递过来的参数,所以对z的操作就是对全局变量的操作,可以改变z的值。3 传递过来的指针也是一个参数,函数调用结束时也要被释放掉,但是释放的只是指针本身,在被调用的函数运行时指针参数改变的是指针所指向的变量本身,所以通过指针的传递可以让被调函数改变主调函数里面的的变量。

 

转载于:https://www.cnblogs.com/siguoya/p/3463934.html

你可能感兴趣的文章
深入理解JVM之内存区域与内存溢出
查看>>
DSAPI+DS控件库 Windows7风格控件演示
查看>>
面向对象高级
查看>>
Bitwise And Queries
查看>>
打印Ibatis最终的SQL语句
查看>>
HBase之八--(3):Hbase 布隆过滤器BloomFilter介绍
查看>>
oracle连接问题ORA-00604,ORA-12705
查看>>
NOI 2019 退役记
查看>>
java的几个日志框架log4j、logback、common-logging
查看>>
Java从零开始学十三(封装)
查看>>
文字笔记
查看>>
shell获取目录下(包括子目录)所有文件名、路径、文件大小
查看>>
【bzoj3524】[Poi2014]Couriers 主席树
查看>>
【bzoj1131】[POI2008]Sta 树形dp
查看>>
【bzoj3886】[Usaco2015 Jan]Moovie Mooving 状态压缩dp+二分
查看>>
【bzoj4998】星球联盟 LCT+并查集
查看>>
[daily][btrfs][mlocate][updatedb] mlocate不认识btrfs里面的文件
查看>>
WebLogic Exception
查看>>
Python2和Python3中的rang()不同之点
查看>>
MySQL的外键,修改表,基本数据类型,表级别操作,其他(条件,通配符,分页,排序,分组,联合,连表操作)...
查看>>