[c++]Lista jednokierunkowa

0
Wezel* removeOdd(Wezel* head) 
{
	
	while(wsk!=NULL)
	{
		Wezel *wsk=head;
		if(wsk->next->dana%2 != 0)
		{
			cout<<"usuwamy: "<<head->next->dana<<endl;
			Wezel *usuwany=wsk->next; 
			wsk->next = usuwany->next; 
			delete usuwany;    
		}
		wsk=wsk->next;
	}
	return NULL;
}

Witam. Mam pytanie.. Pomijając fakt, że to działałoby tylko gdy nie usuwamy pierwszego elementu listy.. dlaczego to mi się wysypuje?? Siedzę nad tym już sporo czasu i na prawdę nie wiem o co kaman. Może jakieś sprawne oko zobaczy to czego nie widzę ja..

0
Wezel* removeOdd(Wezel* head) 
{
	Wezel *wsk=head;
	while(wsk->next!=NULL)
	{
		if(wsk->next->dana %2 != 0)
		{
			cout<<"usuwamy: "<<head->next->dana<<endl;
			Wezel *usuwany=wsk->next; 
			wsk->next = usuwany->next; 
			delete usuwany;    
		}
		wsk=wsk->next;
	}
	return NULL;
}

Już mi się nie wysypuje:)
ale nie usuwa el. który chcę...

0

Mam już:)

1 użytkowników online, w tym zalogowanych: 0, gości: 1