リンクされたリスト(したがってポインター)を使用して、cでセットのリストを出力する必要があります。ただし、リストの最初の要素を削除してリストを印刷しようとすると、互いに多くのアドレスが表示されます。問題が何であるかについての提案はありますか?ありがとう!
削除機能:
 int delete(set_element* src, int elem){
 if (src==NULL) {
    fputs("The list is empty.\n", stderr);
 }
 set_element* currElement;
 set_element* prevElement=NULL;
 for (currElement=src; currElement!=NULL; prevElement=currElement, currElement=currElement->next)     {
    if(currElement->value==elem) {
        if(prevElement==NULL){
            printf("Head is deleted\n");
            if(currElement->next!=NULL){
                *src = *currElement->next;
            } else {
                destroy(currElement);
            }
        } else {
            prevElement->next = currElement->next;
        }
        //  free(currElement);
        break;
    }
   }
return 1;
}
 void print(set_element* start)
{
    set_element *pt = start;
    while(pt != NULL)
    {
      printf("%d, ",pt->value);
     pt = pt->next;
   }
 }