Я пытаюсь выделить массив символов * в C. Я заранее знаю количество столбцов, но не строк, и я хочу выделять строки по мере необходимости.
Я пытался использовать:
char *(*data)[NUMCOLS]; //declare data as pointer to array NUMCOLS of pointer to char
data = malloc(sizeof(char*));
теперь приведенная выше строка должна выделять данные [0] ... правильно? тогда я должен иметь возможность использовать строку, например
data[0][1] = strdup("test");
.
..
data[0][NUMCOLS-1] = strdup("temp");
Я получаю ошибку seg. Я не могу понять, что здесь не так. может кто-нибудь, пожалуйста, помогите.