Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Zašto ovaj kod ne učitava podatke

[es] :: C/C++ programiranje :: Zašto ovaj kod ne učitava podatke

[ Pregleda: 3963 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

god_of_thunder
Beograd

Član broj: 9875
Poruke: 15
*.beograd-3.tehnicom.net



Profil

icon Zašto ovaj kod ne učitava podatke09.05.2003. u 01:18 - pre 233 meseci
Posle izvršavanja uspem da unesem samo ime 1 osobe, a ostalo samo ispiše.

Code:
for(i=0;i<n;i++) {
                printf("\nIme %i osobe? ",i+1);
                scanf("%s",niz_osoba[i].ime);
        
                printf("\nDatum rodjenja %i osobe? ",i+1);
                scanf("%s",niz_osoba[i].datum_rodjenja);
                printf("\n\n");

        }


Hvala.
 
Odgovor na temu

6544616a006e
Nadej Kilec
Bukulja

Član broj: 10080
Poruke: 44
*.telia.com

Sajt: www.gnu.org


Profil

icon Re: Zašto ovaj kod ne učitava podatke09.05.2003. u 02:03 - pre 233 meseci
Koje vrednosti ti ima promenljiva n?
---
GNU's Not UNIX
 
Odgovor na temu

god_of_thunder
Beograd

Član broj: 9875
Poruke: 15
*.beograd-3.tehnicom.net



Profil

icon Re: Zašto ovaj kod ne učitava podatke09.05.2003. u 13:02 - pre 233 meseci
bilo koju vrednost da stavim isto se desava.
 
Odgovor na temu

zeco

Član broj: 5873
Poruke: 9
*.cmu.carnet.hr



Profil

icon Re: Zašto ovaj kod ne učitava podatke20.06.2003. u 18:50 - pre 231 meseci
Pa pošalji cijeli kod a ne samo dio možda nije problem tu.
 
Odgovor na temu

zeero
croatia

Član broj: 11528
Poruke: 4
*.cmu.carnet.hr

ICQ: 308235657


Profil

icon Re: Zašto ovaj kod ne učitava podatke22.06.2003. u 11:34 - pre 231 meseci
da moguce je da nisi fulao u ovoj petlji koja se ponavlja mozda je greska ranije....stavi tu...
poz
Neznanje je neprijatelj!!
 
Odgovor na temu

filmil
Filip Miletić
Oce Technologies B.V., inženjer
hardvera
Arcen, NL

Član broj: 243
Poruke: 2114
*.adsl.zonnet.nl

Jabber: filmil@jabber.org
ICQ: 36601391


+3 Profil

icon Re: Zašto ovaj kod ne učitava podatke22.06.2003. u 11:55 - pre 231 meseci
Citat:
god_of_thunder:
Posle izvršavanja uspem da unesem samo ime 1 osobe, a ostalo samo ispiše.


To se često dešava ako format podataka koje si uneo ne odgovara formatu koje očekuju printf i scanf.

I printf i scanf vraćaju vrednosti koje su jednake broju polja koja su uspešno obrađena. Da bi video gde je problem moraš proveriti ove vrednosti posle svakog poziva printf i scanf. Problem je na onom mestu gde printf ili scanf prvi put vrate 0 (tj. nisu uspeli da obrade nijedno od polja). Ljudi obično zaborave na ovu osobinu printf i scanf i ne proveravaju vraćene vrednosti.

Ubuduće se potrudi da pošalješ ceo kod, biće lakše snaći se.

f
 
Odgovor na temu

zeero
croatia

Član broj: 11528
Poruke: 4
*.cmu.carnet.hr

ICQ: 308235657


Profil

icon Re: Zašto ovaj kod ne učitava podatke24.06.2003. u 02:03 - pre 231 meseci
hmmm.... ok je to ako imas printf i scanf koji su ograniceni....na nekoliko slova brojeva cc.[15] al koliko vidim u ovom kodu toga nema...
zanimljivo...hhahah
sala...

Neznanje je neprijatelj!!
 
Odgovor na temu

BATE

Član broj: 4159
Poruke: 24
195.66.182.*



Profil

icon Re: Zašto ovaj kod ne učitava podatke26.06.2003. u 18:01 - pre 231 meseci
printf("\nIme %i osobe? ",i+1);
scanf("%s",niz_osoba.ime);

printf("\nDatum rodjenja %i osobe? ",i+1);
scanf("%s",niz_osoba.datum_rodjenja);
printf("\n\n");

da li si dobro instancirao stukturu, posalji cijeli kod. da ti clan strukture ime nije definisan kao char *ime, trebalo bi da bude npr. char ime[255]...

 
Odgovor na temu

milanche
San Francisco

Član broj: 2447
Poruke: 1200
*.oak.inreach.net



+1000 Profil

icon Re: Zašto ovaj kod ne učitava podatke02.07.2003. u 19:03 - pre 231 meseci
Zasto se sve ostalo 'samo' ispise ?

Zato sto odnekuda posle ukucavanja imena imas zaostao 'newline' karakter (nastao pritiskom na <Enter>) u stream baferu. Sledeci scanf( ) koji naidje nece zateci potpuno prazan stream bafer, nego ce sadrzaj stream bafera biti prazan string, zavrsen sa \n. Posledica - sledeci scanf( ) ne ceka, posto ima sta da ucita, i tebe ostavlja u cudjenju.

Razlog ?

Ne znam zasto se desava - moguce je da si scanf( )-u (kao sto kazu ljudi) ponudio
premali bafer. Trebao bi da vidim ostatak koda.

Ovako, kao 'workaround' vidim ovo:
Probaj da ubacis jos jedan scanf( ) izmedju ucitavanja imena i datuma rodjenja. Taj bi trebalo da ocita zaostao sadrzaj bafera te da omoguci da te sledeci scanf( ) kulturno saceka da ukucas datum rodjenja.
 
Odgovor na temu

filmil
Filip Miletić
Oce Technologies B.V., inženjer
hardvera
Arcen, NL

Član broj: 243
Poruke: 2114
*.et.tudelft.nl

Jabber: filmil@jabber.org
ICQ: 36601391


+3 Profil

icon Re: Zašto ovaj kod ne učitava podatke02.07.2003. u 19:09 - pre 231 meseci

Krajnje je vreme da OP lepo pošalje ceo kod programa koji ne radi, da ne bismo nagađali. Ili grešim?

f
 
Odgovor na temu

[es] :: C/C++ programiranje :: Zašto ovaj kod ne učitava podatke

[ Pregleda: 3963 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.