数组名是地址传递是指什么意思 和数组元素传递到底有什么不同 我知道一个是地址一个是数值 能不能给我

数组名是地址传递是指什么意思 和数组元素传递到底有什么不同 我知道一个是地址一个是数值 能不能给我一个直观的解释

数组元素作为函数的形参时,
形参和实参是由编译系统分配的两个不同的内存单元,
值只能
从实参向实参传递。
而使用数组名作为实参,
形参数组仅仅是一个虚数组,
在函数调用时编
译系统仅仅分配一个存储地址的变量,
形参数组名就是该变量名,
参数传递时将实参数组的
首地址传给该变量,
这样形参数组和实参数组首地址相同,
表示的是一个数组,
共享同一段
内存空间,

传址:也相当于赋值,只是他所赋值的对象不是实参的内容,而是实参所分配内存的首地址,因为指针才能对地址操作追问

请问传递首地址怎么理解 后面的地址不传递了吗

追答

传递 你给她首地址 那后面的 不是 一个一个的 就延续下去了吗 *(a + i)

追问

噢 明白啦 谢谢您

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-11-29
把数组传递给一个函数,实际上是把这个数组的首元素的地址传入了函数。
把数组元素传入此函数,实际上是直接把元素的值传递给了这个函数。追问

请问首元素的地址是什么意思啊 还有数组元素传递中 是传递的所有值吗

追答

数组名代表的就是数组首元素的地址,即数组的地址。

如果传入的是一个数组元素,那么只会把这个元素传入。

脱离实际程序的解释很空洞,作用是不大的,建议仔细研读C语言教材中的相关内容或者写出实际程序 。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网