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

Potrebna izmjena programa brojaca u C

[es] :: C/C++ programiranje :: Potrebna izmjena programa brojaca u C

[ Pregleda: 2529 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

elektroing
elektroing
IT sektor
Podgorica

Član broj: 204397
Poruke: 98
85.94.120.*



Profil

icon Potrebna izmjena programa brojaca u C04.06.2009. u 19:25 - pre 152 meseci
Svakim pokretanjem programa treba da se izvrsi inkrementiranje broja iz txt fajla.
Prvim pokretanjem od unesenog broja 1 dobijam

1
2

Sledecim pokretanjem nista se ne desava, jer najvjerovatnije vazda ucitava broj 1 umjesto da ucita 2 i da da na izlazu
1
2
3


CODE:

#include <stdio.h>
int main ()
{
int broj;
FILE * pFile;
pFile = fopen ("myfile.txt","r+");
fscanf(pFile,"%d",&broj);
if (pFile!=NULL)
{
broj=broj+1;
fprintf(pFile,"\n%d",broj);
fclose (pFile);
}
return 0;
}
 
Odgovor na temu

marko_81
Marko Acović

Član broj: 97248
Poruke: 133
79.101.222.*



+1 Profil

icon Re: Potrebna izmjena programa brojaca u C04.06.2009. u 20:57 - pre 152 meseci
To je zato sto sa scanf uvek citas jedan te isti red. Treba da se pozicioniras nekako na poslednji upisani red i njega da procitas.
 
Odgovor na temu

elektroing
elektroing
IT sektor
Podgorica

Član broj: 204397
Poruke: 98
95.155.11.*



Profil

icon Re: Potrebna izmjena programa brojaca u C05.06.2009. u 08:25 - pre 152 meseci
OK. Skontao sam i ja to samo ne znam kako da ocitam taj zadnji karakter
Meni bi i odgovarala da nakon citanja iz fajla on izbrise sadrzaj, izvrsi inkrementiranje broja i sacuva ponovo u fajl, tako da ce u fajlu vazda postojati samo jedan broj.

Samo koja je komanda za brisanje sadrzaja fajla ili kako da ocitaz zadnji karakter ?
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4890
93.87.4.*

Jabber: xfiles@elitesecurity.org


+633 Profil

icon Re: Potrebna izmjena programa brojaca u C05.06.2009. u 09:21 - pre 152 meseci
Citat:

Samo koja je komanda za brisanje sadrzaja fajla ili kako da ocitaz zadnji karakter ?

Ne treba ti naredba za brisanje. Otvaranje datoteke za pisanje (w+) ce prethodni sadrzaj automatski ukloniti.

Dakle, mozes ovako, iz dva otvaranja (moze i iz jednog ali da ne komplikujemo za pocetak):

1. procitas sadrzaj fajla, gde je samo jedan znak:
fscanf( pFile,"%d",&broj );
(prethodno otvoris datoteku za citanje i zatvoris je nakon citanja)

2. uvecas brojac:
++broj;

3. upises novi sadrzaj fajla:
fprintf( pFile,"%d", broj );
(prethodno otvoris datoteku za PISANJE i zatvoris je nakon upisa)



P.S.

Citat:

if (pFile!=NULL)

Taj deo koda ide pre fscanf odnosno fprintf, a ne posle kao sto si napisao.
 
Odgovor na temu

elektroing
elektroing
IT sektor
Podgorica

Član broj: 204397
Poruke: 98
95.155.11.*



Profil

icon Re: Potrebna izmjena programa brojaca u C05.06.2009. u 12:50 - pre 151 meseci
Hvala najljepsa !

Radi.
 
Odgovor na temu

[es] :: C/C++ programiranje :: Potrebna izmjena programa brojaca u C

[ Pregleda: 2529 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

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