#include stdioh#include stdlibh 定义活动的结构体typedef struct char name; int duration; int earliestStart; int latestStart; int critical; int numOfPredecessors; char predecessors; Activi
在代码中,报错的地方是在初始化活动列表中为每个活动的predecessors成员分配内存时出现的问题。在这里,您需要将malloc返回的void指针转换为char指针类型。
具体来说,您可以将以下行代码:
activities[1].predecessors = malloc(sizeof(char)); activities[1].predecessors = 'A';
更改为:
activities[1].predecessors = (char *)malloc(sizeof(char)); *(activities[1].predecessors) = 'A';
这样就将void指针转换为了char指针,并将'A'赋值给了predecessors指针所指向的位置。
同样的修改也需要应用到其他初始化活动列表的地方,包括activities[2]到activities[8]。
修改完成后,重新编译并运行代码,应该就不会再出现这个错误了。
原文地址: http://www.cveoy.top/t/topic/h3KJ 著作权归作者所有。请勿转载和采集!