Forum Sveta kompjutera

Nazad   Forum Sveta kompjutera > Test Run > Programiranje
Uputstvo Članstvo Kalendar Današnje poruke Pretraži

Programiranje Programski jezici, tehnike, alatke...

Odgovor
 
Alatke vezane za temu Vrste prikaza
Stara 20.4.2011, 23:01   #1
clzola
Član
 
Član od: 14.4.2010.
Lokacija: Podgorica
Poruke: 332
Zahvalnice: 61
Zahvaljeno 11 puta na 11 poruka
Određen forumom Citanje iz fajla. Don't Send :/

Kod:
char RedniBrojRacuna[5];
     printf("\nUnesite redni broj racuna: ");
     scanf("%s", &RedniBrojRacuna);
     
     int k;
     for(k=0; k<=4; k++)
         filename[5+k] = RedniBrojRacuna[k];
     printf("%s\n", filename);
         
     Racun pRacun;
     OpenForWriteing(filename);
     fscanf(logFile, "%s", pRacun.Datum);
     fscanf(logFile, "%s", pRacun.ImeRacuna);
     fscanf(logFile, "%d", pRacun.BrojProizvoda); // <-- Ova linija :/
     
    // int i;
    // for(i=0; i<pRacun.BrojProizvoda; i++)
    //     fscanf(logFile, "%s", pRacun.Proizvod[i]);
     
    // for(i=0; i<pRacun.BrojProizvoda; i++)
    //     fscanf(logFile, "%f", pRacun.Cijena[i]);
         
    // fscanf(logFile, "%f", pRacun.Ukupno);
    
    printf("Datum: %s\n", pRacun.Datum);
    printf("Ime Racuna: %s\n", pRacun.ImeRacuna);
Program treba da iz postojeceg fajla procita linije u njemu.
Prva linija sadrzi datum , druga sadrzi ime, treca sadrzi broj proizvoda (neki N broj), pa onda ide N proizvoda a zatim N cijena i na kraju zbir cijena.

Program mi izbaca Don't Send kada stigne do dijela kada treba da procitam ovaj broj N. kako moram da ga procitam kao integer, stavim "fscanf(logFile, "%d", pRacun.BrojProizvoda);" ali mi uvijek izbaci Don't Send kada krene da cita tu liniju. Mora da bude integer zato sto broj narednih linija zavisi od tog broja. Takodje sam promenljivu BrojProizvoda deklarisao kao integer u strukturi.

A ako bih promjenio tu varijablu u string a zatim iz stringa dobijao broj onda bih trebao da prepravim jako mnogo linija, gde istu promenljivu tretiram (koristim) kao integer.. Ali mi to nekako dodje glupo da radim, ako vec mogu odmah da procitam kao integer... :/

Vjerovatno cu i za ove linije gdje treba da citam kao float da dobijam gresku, mada to nisam testirao...

Takodje postoji drugi fajl koji izgleda ovako:
Kod:
[settings]
BrojRacuna=1
StanjeNovca=400.00
I kod ovog fajla on sasvim normalno cita ova dva broja (int i float);

Help
ps. Ostatak koda odlicno radi, samo me ovaj dio zeza.

EDIT
Provalio sam gresku
zaboravio sam '&' znak da stavim ispred promenljive koju unosim
Kod:
fscanf(logFile, "%d", &pRacun.BrojProizvoda); // <-- Ova linija :/
Moderator moze slobodno da obrise

Poslednja ispravka: clzola (20.4.2011 u 23:11)
clzola je offline   Odgovor sa citatom ove poruke
Stara 20.4.2011, 23:53   #2
pyost
Član
 
Član od: 30.10.2005.
Lokacija: Vancouver, BC
Poruke: 475
Zahvalnice: 48
Zahvaljeno 95 puta na 75 poruka
Određen forumom Re: Citanje iz fajla. Don't Send :/

Ako radi, odlicno, ali u prvom scanf-u je ampresand visak - RedniBrojRacuna je vec pokazivac, pa ti & nije potrebno.
pyost je offline   Odgovor sa citatom ove poruke
Odgovor

Bookmarks sajtovi


Vaš status
Ne možete postavljati teme
Ne možete odgovarati na poruke
Ne možete slati priloge uz poruke
Ne možete prepravljati svoje poruke

BB kod: uključeno
Smajliji: uključeno
[IMG] kod: uključeno
HTML kod: isključeno


Slične teme
tema temu započeo forum Odgovora Poslednja poruka
Java, tabela, TableModel i citanje iz baze mcdhappy80 Programiranje 3 3.12.2010 6:14
Citanje stringova red po red iz .txt fajla - Visual C++ Nenad Zivic Programiranje 4 6.11.2010 2:02
PHP i citanje iz baze nepoverljiv Serverske aplikacije i baze podataka 1 1.3.2010 1:46
Java - čitanje kizaPr Programiranje 10 29.7.2008 10:40
neresiv problem - izbacuje me iz igara Drale Kvarovi 8 18.12.2006 17:09


Sva vremena su po Griniču +2 h. Sada je 20:50.


Powered by vBulletin® verzija 3.8.7
Copyright ©2000–2024, vBulletin Solutions, Inc.
Hosted by Beograd.com