Итак, у меня есть функция, которая загружает переменную char ** с некоторыми строковыми данными. Моя цель состоит в том, чтобы обработать процесс и распечатать некоторые из этих данных в дочернем элементе, а некоторые из родительского. Однако я не могу ссылаться на указатель после вызова fork ().
Я думал, что fork () сделал копию всего адресного пространства родительского процесса, который, похоже, будет включать в себя различные указатели стека ...
По сути, мой код в настоящее время выглядит так:
load_data(char **data);
char** data;
load_data(data);
printf("String 0: %s\n", data[0]);
fork();
printf("String 0 again: %s\n", data[0]); /* Segfaults Here! */
У кого-нибудь есть идеи, что я делаю не так? Я провел небольшой поиск в Google по этому вопросу, и кажется, что я делаю, должно работать - но это не так. Таким образом, я неправильно понимаю нечто фундаментальное ...