我目前有动态数组:
char *myData[500][10]; //myData is the name of an array of[500][10] pointers to type char.
我想创建一个静态二维数组,500 行 X 10 列,每个元素存储 40 个字符的内存。
下面是正确的声明方式吗?
char myData[500][10][40];
最佳答案
是的。
但是:
- 这是一个很大的结构,在栈上声明它可能不是一个好主意
- 这种方法的灵 active 不如动态版本
- 如果您打算使用包含最多 40 个字符的 NULL 终止字符串,您应该使用
[500][10][41]
为\0
留出空间
关于c - 如何将特定大小的二维数组从动态更改为静态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1059555/