如何将二维数组从动态更改为特定大小的静态?

时间:2009-06-29 17:49:15

标签: c arrays dynamic static 2d

我目前拥有动态数组:

char *myData[500][10]; //myData is the name of an array of[500][10] pointers to type char.  

我想创建一个静态2d数组,500行X 10列,每个元素存储40个字符的内存。

以下是宣布这一点的正确方法吗?

char myData[500][10][40];

1 个答案:

答案 0 :(得分:5)

但是

  • 这是一个大型结构,在堆栈上声明它可能不是一个好主意
  • 此方法的动态版本
  • 的灵活性较低
  • 如果您的意思是使用包含最多40个字符数据的NULL终止字符串,则应使用[500][10][41]\0留出空间