zoukankan      html  css  js  c++  java
  • C语言简介---通过指针引用多维数组

      在理解C语言中的二维数组时,我们通常用矩阵的形式来表示二维数组,但这只是逻辑上的概念,但是在内存中,各元素是连续存放的,不是二维的,是连续的。

      从二维数组的角度来看,a代表二维数组首元素的地址,现在的首元素不是一个简单的整型元素(以int a[3][4]为例),而是以四个整型元素所组成的一维数组,因为a代表的是首行的首地址(行号为0),a+1代表序列为1的行的首地址。

      a[0]和*(a+0)等价,a[1]和*(a+1)等价,a[i]和*(a+i)等价。a[0]+1和*(a+0)+1都是&a[0][1]。

      解析:a+1是二维数组a中序号为1的行的首地址(序号为0起算),而*(a+1)并不是a+1单元的内容值,因为a+1并不是一个变量的存储单元。也就谈不是它的内容。*(a+1)就是a[1],而a[1]是一维数组名,所以也是地址,它指向a[1][0]。a[1]和*(a+1)都是二维数组中地址的不同表现形式。

  • 相关阅读:
    oracle 动态SQL
    Oracle 学习PL/SQL
    SQL优化原理
    JAVA环境配置
    Java接口
    Java数据类型、操作符、表达式
    C#-VS配置开发环境-摘
    Java版本
    网站构建
    Java 时间、字符串
  • 原文地址:https://www.cnblogs.com/RanWhoo/p/13278752.html
Copyright © 2011-2022 走看看