函数与数组
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://298452.blog.51cto.com/288452/55172 |
int sum_arr(int arr[],int n) 和 int sum_arr(int* arr,int n) 在用于函数头和函数原型中时是等价的。在前者中的arr实际不是一个数组,而是一个指针,但可以当作数组来使用,旨在提醒用户arr不仅指向int,而且还指向第一个int。
arr[i]=*(arr+i),&arr[i]=arr+i 指针(包括数组名)加1,实际上加上一个与指针指向的类型的长度(以字节为单位)相等的值。但对于数组而言,用指针加法和数组下标是等效的。
c++按值传递数据时函数使用数据拷贝,但接受数组名参数的函数访问的是原始数组,而不是其拷贝。所以可以通过调用该函数给数组赋值。c++为了防止意外更改数组中的内容,可以在申明形参时使用关键字const,如int sum_arr(const int arr[],int n);这意味着不能在sum_arr函数中用arr来修改数组中的数据。 本文出自 “lion_pc” 博客,请务必保留此出处http://298452.blog.51cto.com/288452/55172 本文出自 51CTO.COM技术博客 |


lion-pc
博客统计信息
热门文章
最新评论
友情链接