5. praktikum - Binaarne failimajandus

Allikas: Lambda
Redaktsioon seisuga 4. oktoober 2012, kell 16:02 kasutajalt Irve (arutelu | kaastöö) (Uus lehekülg: '{{Itv0020}} See praktikum püüab kirjutada programmi andmeid binaarkujul faili. Ühe eeldusena võiks teil tehtud olla 3. praktikum: teisisõnu dünaamilise massiivi ehitamise ...')
(erin) ←Vanem redaktsioon | Viimane redaktsiooni (erin) | Uuem redaktsioon→ (erin)
Mine navigeerimisribale Mine otsikasti
Süsteemprogrammeerimine keeles C

Praktikumid

Laborid

See praktikum püüab kirjutada programmi andmeid binaarkujul faili. Ühe eeldusena võiks teil tehtud olla 3. praktikum: teisisõnu dünaamilise massiivi ehitamise programm.

Ülesanne

Ülesandeid on kaks. Esimene neist on puhtakujuline fwrite() fread() harjutamine ja teine tahab veidi nuputamist.

= Käivitumiskorrad

  • Kirjutage programm, mis teab mitu korda ta on käivitunud ja trükib selle arvu välja.
    • Käivituskordade arv salvestage faili nimega runtimes.dat
    • Kui see fail puudub, kirjutage binaarselt faili 1, sulgege fail ja väljuge.
    • Kui fail on olemas, lugege sealt käivitumiskordade arv, suurendage seda, trükkige välja, kirjutage info faili ning väljuge.


Tabel faili ja tabel failist

Siin harjutuses harjutage ka getopt() funktsiooni kasutamist.

  • Kui programm käivitada käsureavõtmeteta, trükkige välja abiinfo
  • Kui programm käivitada võtmega:
 tabel -c failinimi.dat -n 10
Siis looge 10 elemendeist koosnev arvtabel ning kirjutage see binaarselt faili failinimi.dat
  • Kui programm käivitada võtmega:
tabel -r failinimi.dat
Siis avage fail, lugege sealt tabeli mõõtmed ja tabel ise ning näidake tabel ekraanile.

Vihjeid

  • Tabeli failiformaat on kõige mõistlikum teha nii, et faili esimeses neljas baidis hoiate tabeli mõõtmeid (n = 10 puhul siis binaarkujul 10) ja seejärel andmed ise.