2009-06-29 2 views
0

настоящее время у меня динамический массив:Как изменить массив 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]; 

ответ

5

Да.

Но:

  • Это большая структура, и объявить его в стек не может быть хорошей идеей,
  • Этот подход имеет меньшую гибкость, динамической версии
  • , если вы имеете в виду для использования строк с NULL с длиной до 40 символов, вы должны использовать [500][10][41], чтобы оставить место для \0
Смежные вопросы