c - 分配给类型“struct ListNode”时的类型不兼容
问题描述
我尝试动态创建一个结构 ListNodes 的数组,我想在其中存储每个节点。我收到此消息,但我不知道应该是什么问题错误截图
struct ListNode {
int val;
struct ListNode *next;
};
struct ListNode* middleNode(struct ListNode* head){
int count=0;
int i=0;
struct ListNode* p=head;
struct ListNode* array = (struct ListNode*)malloc(100*sizeof(struct ListNode));
while(head!=NULL)
{
array[i]= head;
head=head->next;
count++;
i++;
}
return array[i/2];
free(array);
}
这是 C++ 中的解决方案:在此处输入图像描述
解决方案
根据我们在评论中的讨论,您可以将函数编写为:
struct ListNode* middleNode(struct ListNode* head)
{
int i=0;
struct ListNode *retval;
struct ListNode **array = malloc(100*sizeof(struct ListNode *));
while(head!=NULL)
{
array[i]= head;
head=head->next;
i++;
}
retval= array[i/2];
free(array);
return retval;
}
推荐阅读
- ruby-on-rails - 如何在 Ruby on Rails 的 html erb 文件中有条件地显示 div
- d3.js - 在 Bounded Force Layout 中,链接的节点超出了矩形
- c++ - 在 Eclipse 环境中使用共享库 (SDSoC)
- r - R-试图获得每行(顺序位置)之间的时间差?
- c# - Select2 给出错误“无法读取未定义的属性‘结果’”
- python - 推断 sagemaker 端点时出错
- adobe-analytics - Adobe DTM s.getPreviousValue() 在正确使用时不起作用?
- maxima - 千里马不能用总和求解线性方程
- python - LabView 和 Python (SciPy) 中的 FFT 有什么区别
- java - 如何使用 PDFBox 在 Java 中的 PDF 文件中查找书签的外部链接