Любая помощь при удалении одной строки из массива двойных указателей? Например, каждая строка массива содержит строку имени, например, 'J' 'o' 'h' 'n' '\0'
. Из этого массива, полного имен, я хочу удалить из него имя.
char **p = malloc(arraySize*sizeof(char*));
for (i = 0;i < recordAmount;i++){
fnames[i] = malloc(c*sizeof(char));
}
/* to summarize I scan the user data into array after I allocate memory to it */
free(*p[0]);
После использования free, указанного в моем примере кода выше, я обнаружил, что память, которую я хотел бы освободить, не является 't, будучи свободным, и если я пойду печатать содержимое массива, он в итоге напечатает данные, которые были там изначально, например, 'J' 'o' 'h' 'n' '\0'
. Имейте в виду, что внутри массива есть несколько имен.