您好,欢迎来到爱玩科技网。
搜索
您的当前位置:首页数组名和指针区别

数组名和指针区别

来源:爱玩科技网

  前两天同学问了我一个问题:“数组名和指针有什么区别,或者说这两者有没有区别?”

  我回顾了下,大学课堂上老师讲的,貌似记得老师说数组名就相当于指针,比如:“一维数组就是一级指针”,“二维数组是二级指针”之类的。结果同学告诉说原来我也是这么理解的,其实“数组名与指针有着本质的区别”,然后给我推荐了一篇博文。

  下面我将我自己看到的这篇博文转载到这里,希望以后能记住这个重大的区别:

  1.2 在数组名并非指针这个问题上,通常会产生两种疑问:

1。作为形参的数组,不是会被转换为指针吗?
2。如果形参是一个指针,数组名可以作为实参传递给那个指针,难道不是说明了数组名是一个指针吗?

  第二,函数参数传递的过程,本质上是一种赋值过程。C对函数调用是这样规定的:函数调用由一个后缀表达式(称为函数标志符,function designator)后跟由圆括号括起来的赋值表达式列表组成,在调用函数之前,函数的每个实际参数将被复制,所有的实际参数严格地按值传递。因此,形参实际上所期望得到的东西,并不是实参本身,而是实参的值或者实参所代表的值!举个例来说,对于一个函数声明:

  void fun(int i);

转载于:https://www.cnblogs.com/dpflnevergiveup/p/3192072.html

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- aiwanbo.com 版权所有 赣ICP备2024042808号-3

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务