5. praktikum - Binaarne failimajandus: erinevus redaktsioonide vahel

Allikas: Lambda
Mine navigeerimisribale Mine otsikasti
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 ...'
 
Resümee puudub
 
(ei näidata sama kasutaja 2 vahepealset redaktsiooni)
5. rida: 5. rida:
== Ülesanne ==
== Ülesanne ==


Ülesandeid on kaks. Esimene neist on puhtakujuline fwrite() fread() harjutamine ja teine tahab veidi nuputamist.
Ülesandeid on kaks. Esimene neist on puhtakujuline [http://linux.die.net/man/3/fwrite fwrite()] [http://linux.die.net/man/3/fread fread()] harjutamine ja teine tahab veidi nuputamist.


=== Käivitumiskorrad ==
=== Käivitumiskorrad ===


* Kirjutage programm, mis teab mitu korda ta on käivitunud ja trükib selle arvu välja.
* Kirjutage programm, mis teab mitu korda ta on käivitunud ja trükib selle arvu välja.
17. rida: 17. rida:
=== Tabel faili ja tabel failist ===
=== Tabel faili ja tabel failist ===


Siin harjutuses harjutage ka getopt() funktsiooni kasutamist.
Siin harjutuses harjutage ka [http://linux.die.net/man/3/getopt getopt()] funktsiooni kasutamist.


* Kui programm käivitada käsureavõtmeteta, trükkige välja abiinfo
* Kui programm käivitada käsureavõtmeteta, trükkige välja abiinfo

Viimane redaktsioon: 4. oktoober 2012, kell 16:31

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.