A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 895928691 中级黑马   /  2015-7-21 21:50  /  3501 人查看  /  29 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

上课的时候就很难系统的理解,还有传递地址的过程

29 个回复

倒序浏览
简单的点首先你不要把他俩(数组名传值,数组元素传值)想的那么复杂,记住一句话:数组名传值意思就是“传的是地址”而这个地址在计算机中怎么算都是8个字节,数组元素传值意思就是“传的就是数组元素的这个值,这个元素值是几那它就是几”,元素传值时候你要考虑好,下表位置的问题。。其它的一切OK
回复 使用道具 举报
至于你文中提的这个传递地址过程,我想说说太多了你反倒迷糊了,老师在总结里不由图吗就拿excl表格,不明白拿过来喵俩眼,就算你明白了那也拿过来喵俩眼,因为明天还是后天指针就靠它了。
回复 使用道具 举报
数组作为形参,传递的其实就是地址,数组首元素的地址。。。
回复 使用道具 举报
多看几个例子
回复 使用道具 举报
其实很简单的,数组是引用类型,指向的是堆内存的一块内存空间,此内存空间用地址值来标示,因此数组传递的时候其是传递的是地址值,画几次内存图就明白了,也不要较真 慢慢就懂了
回复 使用道具 举报 1 0
lclofty 来自手机 中级黑马 2015-7-21 23:27:34
7#
先记住最简单的 数组元素做参数 只能传递值 实参形参地址不同, 数组名做参数 进行地址传递 实参形参指向的是同一个地址 ,更深的就去找例子敲敲吧
回复 使用道具 举报
确实这部分很抽象的
回复 使用道具 举报
wdcew 中级黑马 2015-7-22 00:01:45
9#
请你拿一个你感觉最难得例子,然后试着去理解他,
回复 使用道具 举报
爱生活爱程序 来自手机 中级黑马 2015-7-22 00:24:34
10#
就是传递的数组首元素的地址
回复 使用道具 举报
同样迷糊中
回复 使用道具 举报
lclofty 来自手机 中级黑马 2015-7-22 07:21:10
12#
数组元素是值传递 数组名是地址传递 理解不了就先记住好了
回复 使用道具 举报
传递的是数组首地址呀~
回复 使用道具 举报
当传递数组名是传递的地址,传递的是数组元素是值传递,像这样写insert(a)或insert(&a)是地址传递,insert(a[0])是值传递。多多体会吧
回复 使用道具 举报
银行卡上有一串数字,你得依靠这串数字才能查询到你卡上的余额。
回复 使用道具 举报
闪电侠 发表于 2015-7-21 22:08
数组作为形参,传递的其实就是地址,数组首元素的地址。。。

数组调用是作为实参,传递的是数组元素的首地址
回复 使用道具 举报
数组名是名词常量是地址 ,做形参的时候就是把地址传给了函数
回复 使用道具 举报
王劲松 来自手机 中级黑马 2015-7-22 12:23:57
18#
其实传递的是地址值,并非数组本身。弄清楚基本数据类型和引用数据类型区别就好了
回复 使用道具 举报
数组名就是一个值,即表示地址的值,个人观点
回复 使用道具 举报
形式参数就是虚无的,如果没实参调用,他只是摆设。无任何作用。
数组作为形式参数,实参调用它的时候, 传递的是整个数组首元素的地址也就是数组名。
你去买电脑,电脑分显示器,主机,键盘,鼠标,音箱……你会说老板我要一台电脑,而不会说老板我要一台显示器和一台主机还有键盘,鼠标,音箱……
这就是数组名的意义。它就是第一个元素的地址,为了统一整个数组而这样设定,要说为什么,那只能问c语言开发者了=。=
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 加入黑马