Null pointer assignment - не могу разобраться - C (СИ)

Узнай цену своей работы

Формулировка задачи:

typedef struct {
    char r,c,
     width;
    int LAttr;
    int IAttr;
    char ** Labels;
    char ** Inputs;
    char * CMDLabel;
 
} _Form;
 
_Form IOForm, char * p;
 
    p=(char*)malloc(sizeof(char)*FORM_MAXLEN);
     strcpy(IOForm.Inputs[i],"12");
завершается с Null pointer assignment. Где руки подпрямить?

Решение задачи: «Null pointer assignment - не могу разобраться»

textual
Листинг программы
IOForm.Inputs = new char *[N]; // IOForm.Inputs = (char**)malloc(...);
.....
IOForm.Inputs[i] = new char[M]; // IOForm.Inputs[i] = (char*)malloc(...);

Объяснение кода листинга программы

  1. Создается массив указателей на char с именем IOForm.Inputs и размером N.
  2. В каждой ячейке массива IOForm.Inputs выделяется память под массив char с размером M.
  3. Значение i указывает на конкретную ячейку массива IOForm.Inputs, в которой будет храниться указатель на выделенную память.
  4. В этой ячейке массива IOForm.Inputs записывается адрес выделенной памяти.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.375 из 5
Похожие ответы