[问题] 链结串行删除节点问题

楼主: s890269 (赛)   2018-11-05 15:03:45
开发平台(Platform): (Ex: Win10, Linux, ...)
Win10
编译器(Ex: GCC, clang, VC++...)+目标环境(跟开发平台不同的话需列出)
VC++
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
问题(Question):
在练习书后面的习题时遇到问题,我建立五个Element的串行,
并在第三个节点后插入数字10,接着我想要删除串行中的第三个节点
在删除时,用delete释放内存时遇到问题,有上网爬过一些文以及参考写法,
但还是有错,可能是观念的问题,想知道问题究竟在哪
喂入的资料(Input):
预期的正确结果(Expected Output):
Element的数目:5
Element的内容是:
0 2 4 6 8
插入第三个节点后
插入的值为10
0 2 4 10 6 8
删除第三个节点
0 2 10 6 8
错误结果(Wrong Output):
Element的数目:5
Element的内容是:
0 2 4 6 8
插入第三个节点后
插入的值为10
0 2 4 10 6 8
删除第三个节点
Segmentation fault
程式码(Code):(请善用置底文网页, 记得排版,禁止使用图档)
http://codepad.org/BvKHcx4w
补充说明(Supplement):
作者: jerryh001   2018-11-05 16:21:00
最一开始不对 不能1次new5个 要5次1个
楼主: s890269 (赛)   2018-11-05 16:46:00
new我是参考书中的程式码,是这个部分造成delete错误吗?
作者: jerryh001   2018-11-05 17:25:00
你new出来是一个阵列 不能单独delete中间某一格
楼主: s890269 (赛)   2018-11-05 17:53:00
好的,我知道了,谢谢

Links booklink

Contact Us: admin [ a t ] ucptt.com