首页 > 解决方案 > 不允许强制转换为“列表”类型

问题描述

下面是我的代码。

struct movie {
    char movie_name[30];
    float score;
};


typedef struct movie ITEM;

typedef struct node {
    ITEM item;
    struct node* next;
}NODE;

typedef struct list {
    NODE* head;
}List;
void read_file(List *p_head)
{...

List new_movie = (List)malloc(sizeof(struct list));
...
}

我想分配“列表”内存类型。

但是我不能分配。

怎么了?

标签: cstructmalloc

解决方案


当你使用 malloc 时,你应该把它的返回值赋给一个指针:

List *new_movie = (List *)malloc(sizeof(List));

推荐阅读