c - 不允许强制转换为“列表”类型
问题描述
下面是我的代码。
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));
...
}
我想分配“列表”内存类型。
但是我不能分配。
怎么了?
解决方案
当你使用 malloc 时,你应该把它的返回值赋给一个指针:
List *new_movie = (List *)malloc(sizeof(List));
推荐阅读
- reactjs - 通过单击更改表中的值
- javascript - 如何在选择标签中显示所选选项的附加数据
- google-chrome - 独立于全局系统设置的 Chrome 深色/浅色主题
- sql - SQL Partition by with 条件
- java - JAX-RS LoggingFilter - 记录请求实体
- php - Infyom laravel 生成器不显示数据表数据
- regex - 正则表达式 - 如何在此正则表达式中包含特殊字符
- swift - 我得到了缺少目的字符串,但我在 info.plist 中添加了缺少的目的字符串是“NSNearbyInteractionAllowOnceUsageDescription”
- python - 运行“pyw”文件时如何隐藏.exe文件的控制台?
- javascript - 使用 jquery 更改图像的行