История изменений
Исправление theNamelessOne, (текущая версия) :
- Под
choices
у тебя память неправильно выделяется. Ты создаёшь массив строк, на не массив символов, нужно как-то так:И зачем выделять именно 65535 элементов? Не проще выделить какое-то разумное количество, а в случае необходимости сделатьchar **choices = calloc(choices_size, sizeof *choices);
realloc
?Ну и в C не нужно кастовать void-указатели к другим типам указателей.
- Без
goto
у тебя вполне можно обойтись.
Исходная версия theNamelessOne, :
продолжение
- Под
choices
у тебя память неправильно выделяется. Ты создаёшь массив строк, на не массив символов, нужно как-то так:И зачем выделять именно 65535 элементов? Не проще выделить какое-то разумное количество, а в случае необходимости сделатьchar **choices = calloc(choices_size, sizeof *choices);
realloc
?Ну и в C не нужно кастовать void-указатели к другим типам указателей.