Új hozzászólás Aktív témák
-
Gyuri16
senior tag
válasz Geri9159 #2248 üzenetére
nem csak duplan irja ki, hanem rosszul. a baj az, hogy a fscanf hivas utan ottmarad a bemeneten egy ujsor karakter, amit a ciklus kovetkezo iteraciojaban a fgets megeszik, es csak azzal ter vissza. innen pedig az egesz eltolodik. en azt ajanlom egesz fajlt soronkent olvasd be, akkor nem lesz ilyen baj. a fscanf-s reszt helyettesitheted pl igy:
char tmp[30];
fgets(tmp, 30, fbe);
sscanf(tmp,"%d %d %d %d %d %d",&diakok[diakokszam].szovegszerk,&diakok[diakokszam].prezentacio,&diakok[diakokszam].weblap,&diakok[diakokszam].tablazatkezel,&diakok[diakokszam].adatbaziskezel,&diakok[diakokszam].informatika_ism_konyvtar_internet);tovabba a fgets beolvassa az ujsor karaktert is, ezert a nev valtozodban az is ott lesz (feleslegesen) a vegen. ezert van a kimenetedben is egy sorkihagyas a nev alatt. ugyanez igaz az osztaly valtozodra is, de ott mivel limitalod a beolvasast 4 karakterre nem fer bele az ujsor, igy az jol mukodik, ha pontosan 3 karakter lesz a bemenet.
mod: amit fentebb lineltem faq, ott ez is megvan valaszolva: [link]
sok mas gyakori hibara is kiternek benne, erdemes atnezni[ Szerkesztve ]
Nem vagyok egoista, csak uborkagyalu!
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Alpha Laptopszerviz Kft.
Város: Pécs