指针与数组
数组名代表的是数组在内存中的首地址,即a[0],(也就是该数组的第一个元素)
int *p,a[5]; p=a 相当于 p=&a[0];
- 数组名和指向数组的指针变量的区别:
指针变量p是变量,可以赋值。
数组名a是地址是常量不能赋值。
分别用三种方法输出数组元素
#include<stdio.h>
main()
{
int a[10]={9,8,7,6,5,4,3,2,1,0},i,*p;//定义一个整形数组并对它进行初始化赋值
for(i=0;i<10;i++)
{
printf("a[%d]=%d\t",i,a[i]);//下标法
}
printf("\n");
for(i=0;i<10;i++)
{
printf("a[%d]=%d\t",i,*(a+i));//地址法
}
printf("\n");
for(i=0,p=a;p<a+10;p++)
{
printf("a[%d]=%d\t",i++,*p);//指针法
}
printf("\n");
}
来源:https://blog.csdn.net/qq3154007108/article/details/98760256