Значение типа "int" нельзя присвоить сущности типа "LISTNODEPTR" - C (СИ)
Формулировка задачи:
В чём проблема и как починить?
В последней строке ошибки:
error C2440: =: невозможно преобразовать "void*" в "LISTNODEPTR"
IntelliSense: значение типа "void*" нельзя присвоить сущности типа "LISTNODEPTR"
struct listNode { char data; struct listNode *nextPtr; }; typedef struct listNode LISTNODE; typedef LISTNODE *LISTNODEPTR; void insert (LISTNODEPTR *, char); ... void insert(LISTNODEPTR *sPtr, char value) { LISTNODEPTR newPtr, previousPtr, currentPtr; newPtr= (malloc (sizeof (LISTNODEPTR))); ...
Решение задачи: «Значение типа "int" нельзя присвоить сущности типа "LISTNODEPTR"»
textual
Листинг программы
newPtr= (LISTNODEPTR)(malloc (sizeof (LISTNODEPTR)));
Объяснение кода листинга программы
newPtr
- это переменная типаLISTNODEPTR
, которая указывает на выделенную память для хранения структуры данныхLISTNODE
.newPtr
инициализируется результатом вызова функцииmalloc
, которая выделяет память для хранения одного указателя типаLISTNODEPTR
.- Значение, выделенное функцией
malloc
, присваивается переменнойnewPtr
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д