一维数组名是个指针常量 它的值不能被改变 它存放的是一维数组里第一个元素的地址 一维数组名指向的是数组的下标为0的第一个元素。
1 a[i]<<==>>*(a+i)<<==>>*(i+a)<<==>>i[a] //符号表示等价于
1 #include<stdio.h>
2 int mian(){
3 int a[5];
4 printf("%p,%p",a,a+1);//%p以十六进制输出存放的前两个数组元素的地址,地址是连续的
5 return 0;
6 }
(一个字节就是一个地址,int类型四个字节,double八个字节,char一个字节,所有的指针变量只占用4个字节,用第一个字节的地址表示整个变量的地址)
1.存放数组首元素的指针变量
2.存放数组长度的整型变量
1 #include<stdio.h>
2 void arry(int* p,int len){
3 int i;
4 for(i = 0;i<len;i++){
5 printf("%d\n",p[i]);
6 }
7 }
8 int main(){
9 int a[5]={1,2,3,4,5};
10 arry(a,5);//传递数组名,别忘了还有数组长度
11 return 0;
12 }
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有