C语言的第七天学习

来源:互联网 发布:阿里云搭建vpn云免 编辑:程序博客网 时间:2024/05/16 17:34

在学习C语言的第六天,使我对函数和指针有了一定的了解,并能运用他们来编写一些简单的程序。
在今天,也是我学习C语言的第七天,将接触到指针数组和数组指针以及指向指针的指针。(指针的难点)
下面请看我写的这些例题:
例1:
int main(int argc, char **argv)
{
int a[3][4]={{1,2,3,4},{3,4,5,6},{5,6,7,8}};
int i;
int (*p)[4]=a,*q=a[0];
for(i=0;i<3;i++)
{ if(i==0)
(*p)[i+i/2]=*q+1;
else
p++,++q;
}
for(i=0;i<3;i++)
printf(“%d,”,a[i][i]);
printf(“\n”);
printf(“%d,%d”,((int)p),*q);
printf(“\n”);
return 0;
}
在这个程序中我定义了一个二维数组a[3][4],然后定义了一个数组指针p,让它指向二维数组的首地址a,又定义了一个指针q,它指向a0,不一样的是对p做++进行的是行加1,对q做加++进行的是列加1,这是因为指针p指向的是里面有4个元素的一维数组,而指针q指向的只是一个元素。
运行结果:
2,4,7,
5,3

例2:
#include