我有以下二维数组:
#define ROW 100
#define LINE 50
int a[ROW][LINE];
但是如何获取最后 45 行的数组大小,例如 a[55][0]
到 a[99][99]
?
我们可以做一些类似sizeof(&a[55])
的事情吗?
最佳答案
数组的
sizeof
保证等于单个元素的 sizeof
乘以元素数量。因此,如果您想知道特定行数占用了多少内存,只需计算元素数量并乘以元素大小即可。需要 45 行
45 * LINE * sizeof a[0][0]
或者,或者
45 * sizeof a[0]
这些是否是最后 45 行并不重要。所有行都相同。
关于c - C 中二维数组的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17284380/