一维数组传参
来源:互联网 发布:js单个图片木马旋转 编辑:程序博客网 时间:2024/06/05 18:55
今天碰到了一维数组做函数参数的问题,那就扒一扒这个问题:
首先抛结论:
1:C语言中,当一维数组做函数参数时,编译器总是把它解析成一个指向其首元素的指针。
2:实际传递的数组大小与函数形参指定的数组大小没有关系。
然后举例说明:
下面是一个元素交换函数,把数组array【i】和array【j】交换位置。注意看数组是怎么传递给函数的。
正确的写法1:
解释说明:编译器把array解析成指向整形元素的指针,也就是数组的首地址,方括号中加不加指定数字都可以,因为编译器根本不看,因此最好不写,以免引起误解。
正确写法2:
解释说明:这样写就更直接明了了,参数是指向整形元素的指针,而数组的名字又是首元素的地址,也印证了数组名是指针常量。
可能会有一些同学对 函数中array[i] , array[j]不理解,实际上,array[i] = *(array+i),解释称首地址加偏移地址i,就是指向的第i个元素了。
array(i) = (array +i) //这是个指针,指向第i个元素。
array[i] = *(array+i) //这是数组的第i个元素。
注意()和[ ],别看错了。
完。
http://blog.csdn.net/tianjizheng/article/details/46314567
阅读全文
0 0
- 一维数组传参
- 一维、二维数组传参
- 数组(一维数组)
- 数组---一维数组
- 数组(一维数组)
- java数组--一维数组
- 一维数组,字符数组
- 一维数组、二维数组
- 一维数组&三维数组
- 关于一维数组作为函数传参的大小
- Java数组 一维数组,二维数组
- array 数组 一维数组 二维数组
- 一维数组、数组排序、字符数组
- Javascript - 数组 一维数组 二维数组
- 一维数组和二维数组的传值问题
- 一维数组
- 一维数组
- oracle一维数组
- .net core 缓存帮助类
- Linux 定时截取 Tomcat 日志
- 工厂模式
- 《数字技术》连载33 第4章 信息的寄存传输和转换 第6节 求和与求差,数的大小比较
- Python-线程池模块(threadpool.py)
- 一维数组传参
- centos7.2部署tomcat8全过程
- windows server下安装使用mosquitto
- TensorFlow中seq2seq库函数
- Elasticsearch学习--安装运行
- 关联关系注解时报Could not determine type for错误的解决办法
- 关于map的count和find的效率以及空类调用效率(一)
- c# T
- python3中,Tkinter中复选框(Checkbutton)的案例