malloc与new
1 问题的由来
环境:在LeetCode中,使用C++编程。
在创建链表时,使用malloc为节点分配内存,可最后报错,如下图所示。
错误原因:分配内存和释放内存不匹配。
2 解决方法
使用new来为节点分配内存。
new的使用方法如下所示:
struct ListNode* p_head;
p_head = new struct ListNode;
对于malloc创建内存,使用free释放内存;
对于new创建内存,使用delete释放内存。
参考
leetcode 中出现 alloc-dealloc-mismatch 问题