Forum » Programiranje » [C] dvosmerni seznam
[C] dvosmerni seznam
aceton ::
napisat morm program (podprogram), ki vsatvi novo vozlišče z vsebino el pred vozlišče pos
in sicer men je uspelo narediti naslednje:
deklaracija seznama:
ostalo delam v glavnem programi:
napako mi javi na začetku else stavka (assignment from incompatible pointer type) vendar je ne znam rešiti. kaj bi bilo lahko narobe?
in sicer men je uspelo narediti naslednje:
deklaracija seznama:
//element oz. vozlisce struct seznam { int data; struct seznam *next; //kazalec na naslednji element struct seznam *previous; // kazalec na prejšnji element }; // celoten seznam struct seznam *prvi, *zadnji; int positionNmb; //položaj elementa v obliki indeksa - za komuniakcijo z uporabniki struct element *positionLnk; //položaj elementa, izrazen v obliki povezave - kazalec
//pomožna funkcija - komunikacija med uporanikom - pretvorbva in deksa elementa v kazalec na element struct seznam* nmbToLnk (int posNmb){ //kazalec do katerega zelimo priti struct seznam *pos=prvi; int i; for(i=0; i<posNmb; i++){ pos=pos->next; } return pos; }
ostalo delam v glavnem programi:
printf("Vpisi element: "); scanf("%d", &el); printf("Vpisi polozaj: "); scanf("%d", &positionNmb); //če ni nobenega elementa v seznam, ali je element manjši od 0 oz večji od števila vseh elementov v seznam - tedaj javi, da dani položaj ne obstaja if ((prvi==NULL) || (positionNmb<0) || positionNmb>NumEl) { printf("Seznam nima danega polozaja! \n"); printf("Pritisni tipko za nadaljevanje..."); while(getchar()!= '\n'); getchar(); } else { positionLnk = nmbToLnk(positionNmb); struct seznam *tmp, pom, pom1; tmp=(struct seznam*)malloc(sizeof(struct seznam)); tmp->data=el; tmp->next=NULL; tmp->previous=NULL; while (pom!=positonLnk) pom=pom->next; pom->previosu=pom1; pom1->next=tmp; tmp->previosu= pom1; pom=tmp->next; pom->previous=tmp; } }
napako mi javi na začetku else stavka (assignment from incompatible pointer type) vendar je ne znam rešiti. kaj bi bilo lahko narobe?
aceton ::
javi jo v 16. vrstici (positionLnk = nmbToLnk(positionNmb);) in sicer tako kot sem napisala mi napiše assignment from incompatible pointer type
Invictus ::
Narobe deklaracije spremenljivk oz. vračanje napačnega tipa iz funkcije ...
Saj si že skoraj sama našla napako ...
Saj si že skoraj sama našla napako ...
"Life is hard; it's even harder when you're stupid."
http://goo.gl/2YuS2x
http://goo.gl/2YuS2x
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | enojno povezan seznam -izpis nazajOddelek: Programiranje | 3644 (3184) | Randomness |
» | [C] Seznam s poljemOddelek: Programiranje | 2474 (1954) | aceton |
» | statistika črk v stringu C++Oddelek: Programiranje | 2082 (1818) | Tutankhamun |
» | [C] Povezani seznami in kazalciOddelek: Programiranje | 2571 (2138) | Good Guy |
» | [C] Narascajoce sortiranje linearnega seznamaOddelek: Programiranje | 1868 (1757) | Jebiveter |