Chinaunix首页 | 论坛 | 博客
  • 博客访问: 124610
  • 博文数量: 52
  • 博客积分: 2200
  • 博客等级: 大尉
  • 技术积分: 580
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-08 15:00
文章分类

全部博文(52)

文章存档

2011年(1)

2009年(51)

我的朋友

分类: C/C++

2009-10-08 16:25:43

/*=============================================================
          应用二维数组的行指针输出二维数组的元素
                 
==============================================================
             作者:最后的村长
             时间:2009年10月6日
             工具:DEV C++ 4.9.9.2
             version:1.0
==============================================================*/
#include
#include
/*=============================================================*/
int main()
{
    int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};//定义并初始化二维数组
    int (*p2)[4];//定义指针变量,它指向包含4个元素的一维数组,*p两侧的括号不可以缺少
    p2=&a[0];
    for(int i=0;i<3;i++)
    for(int j=0;j<4;j++)
    {
            printf("   a[%d,%d]=%d   ",i,j,*(*(p2+i)+j));//p2移动一下就是从一行移动到另一行
            if(j==3)
            putchar('\n');
            }
/*=================================不同的方式实现相同的结果=========================*/
    printf("\n-----------------------------------------------------------\n");
    int *p1;
    p1=a[0];
    for(int i=0;i<3;i++)
    for(int j=0;j<4;j++)
    {
            printf("   a[%d,%d]=%d   ",i,j,*(p1+i*4+j));//p1是指向单个元素的指针变量,每移动一下就指向下一个元素
            if(j==3)
            putchar('\n');
            }
    system("PAUSE");
    return 0;
   
}
阅读(1418) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~