Hogy rakjam össze a fésűs listát?
void list_main(gya* g,gya* headfo){
gya* uj=(gya*)malloc(sizeof(gya));
strcpy(uj->nev,g->nev);
uj->next=headfo;
headfo=uj;
void lancolas(ba fej, gya* headfo){
gya* segedpointer;
ba* masiksegedpointer;
for(segedpointer=headfo; segedpointer!=NULL; segedpointer=segedpointer->next){
if(strcmp(segedpointer->nev,fej.gya)==0){
masiksegedpointer=segedpointer->head;
segedpointer->head=&fej;
fej.next=masiksegedpointer;
break;
}
}
}
Szóval ami itt zajlik: kap a fésűs lista gerincét összeépítő függvény 2 pointert. Az egyik egy struktúrára mutat, a másik egy kimenő érték akar lenni. A kimenő érték arra akar mutatni, hogy hol van a fésűs lista gerincének a feje. És a mainben egy ilyen változó kapja meg ennek a címét, ami rámutat az egész lista fejére.
Aztán a fésűs lista fogait összerakó függvény megkap szintén 2 pointert, az egyik a befűzendő listaelemhez kötődik, a másik a már meglévő lista feje. Haladjon végig a listán és ha egyezés van a befűzendő neve és a lista gerincének a neve között, akkor fűzze oda a listaelemet.
Íme a main, az adatok egy fájlból érkeznek és azokat rakom struktúrába, ami jól működik:
ba x;
gya y;
ba bafelvevo;
gya gyafelvevo;
FILE* f=fopen... stb.
while(fgets(sor,49, f)!=NULL)
{if(sor[0]!='\n')
{y=gya_struct_maker(sor);}
else
list_main(&y,&gyafelvevo);}
FILE* g;
g=fopen("baglyok.txt", "rt");
if(g==NULL)
{printf("hiba");
return 404;}
while(fgets(sor, 50, g)!=NULL)
{if(sor[0]!='\n')
{ba_make_struct(sor, &x);}
else
{bafelvevo=*ba_listelem(x);
lancolas(bafelvevo, &gyafelvevo);}
}
Igen, igen egy fos az egész, szóval ebben kérném a segítségeket hogy hogy a francba kéne megírni hogy megmaradjon lista fejére mutató pointer na meg persze a lista.
Szóval a két függvénnyel (ami nem a main) van a probléma. Illetve van még az a ba_listelem ami ba* típusú függvény, az egy listaelemet készít el a struktúrákból, de az is jól működik azt is néztem.
Szóval egy működő listaosszepito kód vagy egy marhajó ötlet jól jönne, nagyon hálás lennék.
Te lehetsz az első, aki segít a kérdezőnek!
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!