内存分配中的幻数

Magic number in memory allocation

在学习一些编程练习(google 代码堵塞)期间,我遇到了带有静态数组分配的幻数 42,即使它们使用的索引是从 1 到 16 或到 32。 例如:

     bool can[42];
     for (int i = 1; i <= 16; i++) can[i] = true;

我在想这可能是执行此操作的性能原因(内存分配块 42*32 位?)或类似的东西。 但是我在 google 中找不到任何关于此的材料,有人可以解释一下它是否与系统问题有关,或者只是道格拉斯亚当斯选择的神奇数字 42。

这道题的答案是42。