Я хочу динамически распределять массив 2D-диаграммы. Здесь я пытаюсь сделать это в цикле, но он вызывает ошибку сегментации. Если я удалю "arr [length] = str;" все будет хорошо. Но я не хочу этого делать.Динамический 2D-массив символов
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void) {
char** arr;
int i = 0;
int length = 0;
for(i = 0; i < 4; i ++) {
arr = (char**) realloc(arr, (length+1) * sizeof(char*));
char* str = (char*) malloc(4 * sizeof(char));
arr[length] = str;
}
return 0;
}
Используйте отладчик, чтобы узнать больше о проблеме. – suspectus
Вы пытались установить 'arr' в' NULL' перед циклом? – Cyclonecode
Вы никогда не увеличиваете 'length'. –