Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

C++ - lista dwukierunkowa, błędne przydzielanie adresów

Lukipower 31 Paź 2014 10:58 807 4
  • #1 31 Paź 2014 10:58
    Lukipower
    Poziom 6  

    Witam, próbuje małymi krokami zrozumieć działanie listy dwukierunkowej i jej implementacji. Mam problem odnośnie adresów. Stworzyłem mini wersje funkcji dodaj (dodająca jeden element) aby sprawdzić czy wstawiony element będzie dobrze pokazywał poprzednika i pierwszy element następnika.

    Kod: cpp
    Zaloguj się, aby zobaczyć kod


    Otóż problemem jest wynik działania programu, żaden z adresów poprzednika i następnika nie jest połączony z adresami wskaźników elementów, i dodatkowo wskaźniki na elementy listy posiadają ten sam adres. Bym był wdzięczny jakby ktoś wyjaśnił mi jak mam poprawnie operować adresami aby łączyły się zgodnie z zasadami listy dwukierunkowej niecyklicznej.

    Zamieszczam również screen z programu:

    C++ - lista dwukierunkowa, błędne przydzielanie adresów

    0 4
  • Pomocny post
    #2 31 Paź 2014 11:06
    witoldwitoldowicz
    Poziom 28  

    &temp zwraca adres zmiennej temp która jest stała.
    Spróbuj bez & czyli temp.

    0
  • #3 31 Paź 2014 11:30
    Lukipower
    Poziom 6  

    No tak, naprawiło to większość problemów, dzięki. Został tylko problem błędnego przypisania adresu pierwszego elementu jako poprzednik kolejnego, wciąż w tym miejscu pokazuje zły adres

    0
  • Pomocny post
    #4 31 Paź 2014 11:39
    witoldwitoldowicz
    Poziom 28  

    Kod: cpp
    Zaloguj się, aby zobaczyć kod

    0
  • #5 31 Paź 2014 11:45
    Lukipower
    Poziom 6  

    Wszystko już działa jak należy. Dzięki wielkie za ukazanie mi moich błędów i poprawienie

    0