在C语言中定义二维数组long a[3][5],则数组占多少字节的存储空间?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在C语言中定义二维数组long a[3][5],则数组占多少字节的存储空间?相关的知识,希望对你有一定的参考价值。
,a代表什么,a[1]代表什么
c语言中long占4个字节,所以longa[3][5]占4*3*5=60个字节从元素角度理解a代表a[0][0];从二维数组理解a代表a二维数组名,即二维数组首地址;从一维数组角度理解a代表a[0]即二维数组第一行看作一个一维数组,a[0]为这个一维数组的首地址;
a[1]从二维数组看代表a[1][0]是元素,从一维数组角度看代表二维数组第二行的首地址和上面a[0]一样, 参考技术A 二维数组在存储的时候,可以看做一维数组来对待。上面的数组可以看做以下的数组:
一维数组的第一个元素(由5个元素组成):a[0][0],a[0][1],a[0][2],a[0][3],a[0][4]
一维数组的第二个元素(由5个元素组成):a[1][0],a[1][1],a[1][2],a[1][3],a[1][4]
一维数组的第三个元素(由5个元素组成):a[2][0],a[2][1],a[2][2],a[2][3],a[2][4]
其中,a是一个地址,指向a[3][5]数组的第一个元素(即a[0][0]);而a[1]则表示将a[3][5]数组看做一维数组的第2个元素的地址,也就是a[1][0]的地址。 参考技术B 占3x5x4个字节,a代表这个数组的起始地址,a[1]表示第二行的起始地址。 参考技术C 占用的字节数 3*5*4=60
a为数组首地址 a=&a[0][0]
a[1]=a[1][0]追问
a代表什么,a[1]代表什么 用文字叙述一下吧~
c语言如何表示二维数组里面有#
c语言如何表示二维数组里面有#,说明:常用的有以下几种二维数组的表示方法:第一种是普通的二维数组的表示方法。
第二种是用一维数组来表示二维数组,从显示的元素地址可以看出,二维数组和一维数组表示的二维数组在内存中的储存方式其实是一样的,不过使用二维数组看起来要简单些,只要不用进行地址转换。
第三种表示是用指针数组。本例中的c[i]中的元素其实是地址。这种方法对各个元素大小不一样的情况下比较适用。如:假定有若干个不等长字符串需要我们处理,如果使用a [i ][j]结构,则j必须取这些字符串长度的最大值, 显然这种方法浪费空间。
如果采用* a [i ]结构,则由于a中仅保存每个字符串的首地址,而不是串本身,这不仅节约了空间,而且减少了直接对串进行操作的时间。
第四种方式为用指向指针的变量来表示。此种方式p是指向指针的指针,不能把普通的二维数组的首地址(如本例中的a)赋给它。(因为a不是指向指针的指针)。可以把第三种方式中的数组指针的首地址赋给它。这种方式用的较少。 参考技术A c语言如何表示二维数组里面有#:
1先定义常量,常量用#define来定义。
2然后再定义变量。
3接着是定义二维数组, const float rain[YEAR][MONTHS]= 1.2,1.3,4.7,4.8,5.8,4.6,4.7,4.0,5.0,3.8, 3.2,3.1, 1.2,1.3,4.7,4.9,5.8,4.6,6.7,4.0,5.1,3.8, 3.2,3.1 ; 这里使用const 修饰,表示该二维数组是只读模式,不能修改。
4接着对二维数组进行循环,求得这两年的总降水量。
5然后计算平均降水量,公式:年平均将水量=总降水量/总年数;
6将年平均降水量的结果输出。
7在终端运行结果,查看年平均降水量。 参考技术B 对数。c语言是数学文字的字母表达,需要用到对数,因此这句话可以说c语言如何表示二维数组里面有对数,。
以上是关于在C语言中定义二维数组long a[3][5],则数组占多少字节的存储空间?的主要内容,如果未能解决你的问题,请参考以下文章