//我用的VS2019 void MergeList_Sq(SqList LA,SqList LB,SqList &LC){ int length; student *pa,*pb,*pc,*pa_last,*pb_last; LC.length = LA.length+LB.length; LC.elem=new student[LC.length]; pc=LC.elem; pa=LA.elem; pb=LB.elem; pa_last=LA.elem+LA.length-1; pa_last=LB.elem+LB.length-1; while((pa<=pa_last)&&(pb<=pb_last)){ if(*pa<=*pb) *pc++=*pa++; /*就这个*pa<=*pb,它报错说无法从“student*”转换为“int*”*/ else *pc++=*pb++; } while(pa<=pa_last) *pc++=*pa++; while(pa<=pb_last) *pc++=*pb++; }
4条回答 默认 最新
qfl_sdu 2021-05-24 11:14关注if(*pa<=*pb)还有(pa<=pa_last)&&(pb<=pb_last),pa、pb、pa_last、pb_last这些都是指针,你比较指针有什么意义?这里你想干什么,还有,你student里有没有重载<=符号,没有重载的话肯定会出错
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报