指针规则
一、指针与数组
1.&数组名【某数】=数组名+某数
2.数组名【某数】=(数组名+某数)
3.二维数组中:
指针+i=&(数组名[a][b]后面第i个元素)
&数组名[a][b]=数组名[a]+b=数组名[0]+a列数+b
*( *(p+i)+j )=二维数组名[n+i][j]
&a[1]=a+1;
a[1]=*(a+1)
*a[0][0]+1=&(a[0][1])
二、指针与函数
1.函数声明:数组名[]–>*p
2.函数解释:数组[]–> *(p+i)
3.函数使用:数组名–> q(使用前先关联)
举个小例子:
int i,j;
for(i=0,i<=2;i++)
for(j=0;j<=3;j++)
sum=sum+a[i][j]//计算总和
sum=sum+*(p+i*4+j)//指针形式替换
简单看一下,有没有更简单的方法呢,我们知道在计算机中数组排列是没有行列的,所以我们可以稍微简化一下程序:
int i;
for(i=0;i<=11;i++)
sum=sum=*(p+i);