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

Datoteke u C-u

[es] :: C/C++ programiranje :: Datoteke u C-u

[ Pregleda: 3092 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

zeco

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



Profil

icon Datoteke u C-u20.06.2003. u 18:34 - pre 253 meseci
Koja je razlika između formatiranih i neformatiranih datoteka.
 
Odgovor na temu

tOwk
Danilo Šegan
Zemun/Beograd

Član broj: 94
Poruke: 2743
*.beograd-3.tehnicom.net

ICQ: 9344053
Sajt: alas.matf.bg.ac.yu/~mm011..


+2 Profil

icon Re: Datoteke u C-u20.06.2003. u 18:52 - pre 253 meseci
Ne znam za ovu terminologiju. Pretpostavljam da se radi o tekstualnim i binarnim datotekama. Tekstualne se najčešće učitavaju pomoću funkcija iz standardne biblioteke kao što su „fscanf“, a upisuju se pomoću npr. „fprintf“ (ono poslednje „f“ je za „format“, pa su to možda ove „formatirane datoteke“). Osnovna odlika „tekstualnih“ datoteka je da se sastoje od „redova“ (niz znakova koji se završava sa „\n“ ili nekim drugim znakom ili nizom znakova [\r\n, \r]) promenljive dužine.

„Binarne“ datoteke ne razlikuju „redove“, i najčešće se pišu pomoću fwrite(), a čitaju pomoću fread() — uglavnom su u uskoj vezi sa određenim rasporedom bajtova i bitova u fajlu, pa su strukture (C ključna reč: „struct“) veoma korisne.
Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
 
Odgovor na temu

zeco

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



Profil

icon Re: Datoteke u C-u20.06.2003. u 19:33 - pre 253 meseci
2. U slijednoj neformatiziranoj datoteci "cijene" nalaze se podaci o cijenama određenih proizvoda. Prvi podatak u datoteci je broj podataka koji se nalazi u datoteci (long) a zatim slijedi toliki broj parova šifre (int) i cijene proizvoda (float). Napisati program koji će izračunati prosječnu cijenu proizvoda.


#include <stdio.h>
#include <stdlib.h>

void main( void ) {
FILE *fp;
long broj, i, sifra;
float cijena, suma=0;

if( (fp = fopen("cijene", "rb")) == NULL ) {
printf("Ne moze otvoriti datoteka cijene");
exit(1);

}
fread(&broj, sizeof(long), 1, fp);
for( i=0; i<broj; i++ ) {
fread(&sifra, sizeof(long), 1, fp);
fread(&cijena, sizeof(float), 1, fp);
suma += cijena;
}
printf("\nProsječna cijena je %f", suma/broj);
}

Eto to je zadatak sa neformatiranom datotekom. Osim što se zapisuje drugačije u čemu je bit
 
Odgovor na temu

tOwk
Danilo Šegan
Zemun/Beograd

Član broj: 94
Poruke: 2743
*.beograd-3.tehnicom.net

ICQ: 9344053
Sajt: alas.matf.bg.ac.yu/~mm011..


+2 Profil

icon Re: Datoteke u C-u20.06.2003. u 20:03 - pre 253 meseci
Pa nema, već samo u zapisu, koji implicira neke druge stvari (gušći zapis, zauzima manje mesta na disku, slog konstantne veličine pa je „seek“ na bilo koji podatak brz, i još par ubrzanja).

Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
 
Odgovor na temu

zeco

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



Profil

icon Re: Datoteke u C-u20.06.2003. u 20:28 - pre 253 meseci
Koja je ekstenzija bonarne datoteke
 
Odgovor na temu

tOwk
Danilo Šegan
Zemun/Beograd

Član broj: 94
Poruke: 2743
*.beograd-3.tehnicom.net

ICQ: 9344053
Sajt: alas.matf.bg.ac.yu/~mm011..


+2 Profil

icon Re: Datoteke u C-u20.06.2003. u 21:15 - pre 253 meseci
C ne poznaje pojam „ekstenzije datoteke“ — to je prisutno na nekoliko operativnih sistema (najpopularniji iz te klase su DOS i Windows), ali u većini slučajeva nije toliko bitno pri programiranju u C-u (kada ne koristiš servise operativnog sistema, već standardnu biblioteku).

To znači da ti možeš da koristiš „ekstenziju“ (zapravo ime) koju god hoćeš za binarne datoteke: txt, dat, miljenko, pera, binarna itd. Vodi računa o tome da DOS (i još neki stariji sistemi) ne podržava više od 3 znaka za ekstenziju.

Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
 
Odgovor na temu

zeco

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



Profil

icon Re: Datoteke u C-u20.06.2003. u 22:27 - pre 253 meseci
hvala
 
Odgovor na temu

[es] :: C/C++ programiranje :: Datoteke u C-u

[ Pregleda: 3092 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

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