C中的多维数组

The*_*ter 2 c c++ arrays pointers

我有点像Java-holic.我想了解更多关于C中的数组.是否有这样的数组:

int test[5][5][5]
Run Code Online (Sandbox Code Playgroud)

我想知道它有多少个整数元素.我有三个问题:

  1. 我认为有125 int种类型的元素.那是对的吗?
  2. 这是否正确test有125 *int种元素?
  3. test有5 **int种类型的元素是否正确?

Jos*_*eld 7

首先,我认为有125个int类型元素.

那就对了.它是由5个5 ints 阵列组成的5个阵列的阵列,这意味着总共有125 int秒.

其次,上面'test'数组有125*int类型元素是否正确?

*int不是一个有效的类型 - 大概是你的意思int*.无论哪种方式,答案都是否定的.这里没有指针.

第三,'test'数组有5**int类型元素是否正确?

再一次,**int可能意味着int**,但答案是否定的.本声明中没有指针.

大概是你问这个,因为你有一些想法,"数组是指针"或"数组只是指针下的指针" - 这个想法是错误的.当你要求的时候int[5][5][5],你就得到了 - 一个由总共125个int物体组成的三维数组.