Как создать (наполовину) динамический массив символов в C - PullRequest
3 голосов
/ 28 февраля 2012

Для того, что я пытаюсь сделать, мне нужен массив в форме char **. Я обнаружил, что при использовании следующего создается динамический массив, который в итоге требует 256 бесплатных вызовов:

char** start = malloc(11*sizeof(char));
    for (i=0;i<256;i++) {
    start[i] = malloc(11*sizeof(char));
}
for (i=0;i<256;i++) {
    free(start[i]);
}

Как мне создать массив в форме char[(malloc)][(12)], если это имеет смысл ...

1 Ответ

4 голосов
/ 28 февраля 2012
char (*p)[12] = calloc(n, sizeof(*p));  // or malloc

...

free(p);

p - указатель на n массивы, каждый длиной 12.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...