查找多维数组的大小



如何找到这样一个数组的字节大小?

    double dArray[2][5][3][4];

我尝试过这个方法,但它返回"2"。也许是因为数组只是声明的,没有填充任何内容?

     #include <iostream>
     #define ARRAY_SIZE(array) (sizeof((array))/sizeof((array[0])))
     using namespace std;
      int main() {
        double dArray[2][5][3][4];
        cout << ARRAY_SIZE(dArray) << endl;
       }

我如何找到以字节为单位的大小

这个命令告诉数组中有多少元素。并给出了CCD_ 1对CCD_。

#define ARRAY_SIZE(array) (sizeof((array))/sizeof((array[0])))

如果你想要的是字节计数,这就可以了。

#define ARRAY_SIZE(array) (sizeof(array))

也许是因为数组只是声明的,没有填充任何内容?

这不会影响sizeof的行为。数组没有已填充未填充

array[0]包含5 * 3 * 4元素,因此当数组的第一个维度为2 时,sizeof(array) / sizeof(array[0])将为您提供2

将宏重写为:

#define ARRAY_SIZE(array, type) (sizeof((array))/sizeof((type)))

要获得元素的数量,

或者简单地CCD_ 8来获得字节数。

相关内容

  • 没有找到相关文章

最新更新