关于在链表中的段错误


如若在“合并链表并去除重复元素”的执行语句:

while(p3->data==p1->data&&p1)p1=p1->next;
while(p3->data==p2->data&&p2)p2=p2->next;

用来跳过链表L1/L2中与新建的链表重复的元素,注意如果这么写的话可能会出现“段错误”:

当p1跳到NULL的时候进入下一个循环,判断括号里的条件时时会先判断&&前

此时NULL无data区域,因此会出现段错误

讲他改正如下即可:

while(p1&&p3->data==p1->data)p1=p1->next;
while(p2&&p3->data==p2->data)p2=p2->next;


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM