c++ - 为什么我在尝试添加两个链接列表时遇到此错误?
问题描述
我正在尝试解决一个关于链表的实际编码问题,我应该在每个节点中添加值以形成一个新的链表。但是我收到了这个错误:Line 13: Char 20: runtime error: member access within null pointer of type 'struct ListNode' (solution.cpp)
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode(int x) : val(x), next(NULL) {}
* };
*/
class Solution {
public:
ListNode* addTwoNumbers(ListNode* l1, ListNode* l2) {
ListNode* nodes;
nodes->val = l1->val + l2->val;
nodes->next->val = l1->next->val + l2->next->val;
nodes->next->next->val = l1->next->next->val + l2->next->next->val;
return nodes;
}
};
解决方案
您必须首先为您的nodes
变量分配内存。
ListNode* nodes = new ListNode();
但是,如果您不再使用该变量,请不要忘记删除它,否则您会出现内存泄漏。
推荐阅读
- core-data - 如何在核心数据中求和
- javascript - 如何直接从单击将数据传递给组件,或者在没有代理对象的情况下单击处理程序?
- javascript - 如果数组索引值小于 3,则隐藏按钮
- ms-access - 尽管有链接 MS-Access,但仍难以处理订单/订单详细信息子表单
- visual-studio - 在 IoT Edge 解决方案中指定 Deployment.template.json
- java - 使用提供而不是构造函数注入的视图模型的匕首多重绑定
- flutter - BottomNavigatonBar 的 onTap(index) 方法上的 SetState() 不会重建小部件树
- python - 如何避免 Python 中的语义错误?
- python - 如何通过多处理有效地迭代分割的图像?
- shell - 在一个步骤/命令中查找、解压缩和 grep 多个文件的内容