设有:char a[4],[5];则数组a占用的内存字节数是多少
展开全部
char a[4],[5];
首先这样的声明是错误的,因为逗号后边的[5]没有一个变量名称,无法分配空间,
char型的变量一个占一个字节,所以a[4]占4个字节,如果中间没有逗号,空间就是
楼上说的20个,
char a[4][5];表示有一下变量:
a[0][0] a[0][1] a[0][2] a[0][3] a[0][4]
a[1][0] a[1][1] a[1][2] a[1][3] a[1][4]
a[2][0] ........
a[3][0] .........
一共20个,所以20个字节。
首先这样的声明是错误的,因为逗号后边的[5]没有一个变量名称,无法分配空间,
char型的变量一个占一个字节,所以a[4]占4个字节,如果中间没有逗号,空间就是
楼上说的20个,
char a[4][5];表示有一下变量:
a[0][0] a[0][1] a[0][2] a[0][3] a[0][4]
a[1][0] a[1][1] a[1][2] a[1][3] a[1][4]
a[2][0] ........
a[3][0] .........
一共20个,所以20个字节。
展开全部
20字节,4*5=20一共20个字符,字符型每个占1字节,所以20*1=20
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果int占用2字节,并且有对齐,则为:
3x2
+
2+
8
=16
如果int占4个字节,并且有对齐,则为:
3x4+
4
+
8
=24
这个不同系统上结果不一
3x2
+
2+
8
=16
如果int占4个字节,并且有对齐,则为:
3x4+
4
+
8
=24
这个不同系统上结果不一
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼主这是什么写法?是不是没有逗号的?
没逗号,占4*5=20个字节
没逗号,占4*5=20个字节
追问
你说的是4和5中间有逗号么?如果是说这,那么有逗号
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询