11. praktikum - Longjump ja mmap: erinevus redaktsioonide vahel
Mine navigeerimisribale
Mine otsikasti
Uus lehekülg: '{{itv0020}} '''Proovime longjmp() ja mmap() funktsioone.''' == Long jump == * Kirjutage eelneva kogemuse (signaalide praktikum) baasil programm, mis on kinni lõputus tsüklis,...' |
Resümee puudub |
||
| (ei näidata sama kasutaja üht vahepealset redaktsiooni) | |||
| 1. rida: | 1. rida: | ||
{{itv0020}} | {{itv0020}} | ||
''Proovime longjmp() ja mmap() funktsioone.'' | |||
== Long jump == | == Long jump == | ||
See labor toetub teie eelnevale kogemusele signaalidega (vt vastav praktikum. | |||
* | * Kirjutage funktsioonidega setjmp() ja longjmp() programm nii, et teie programm: | ||
** Küsiks kasutajalt fgets() funktsiooniga oma nime. | ** Küsiks kasutajalt fgets() funktsiooniga oma nime. | ||
** Kui kasutaja seda 10 sekundi jooksul ei sisesta, valib vaikimisi sõna "Anonymous". | ** Kui kasutaja seda 10 sekundi jooksul ei sisesta, valib vaikimisi sõna "Anonymous". | ||
Viimane redaktsioon: 29. november 2012, kell 17:47
Proovime longjmp() ja mmap() funktsioone.
Long jump
See labor toetub teie eelnevale kogemusele signaalidega (vt vastav praktikum.
- Kirjutage funktsioonidega setjmp() ja longjmp() programm nii, et teie programm:
- Küsiks kasutajalt fgets() funktsiooniga oma nime.
- Kui kasutaja seda 10 sekundi jooksul ei sisesta, valib vaikimisi sõna "Anonymous".
- Kui kasutaja vajutab CTRL+C, tühistatakse alarm() ja küsitakse kasutajalt "Are you sure you want to stay Anonymous? [y/N]"
- Jah puhul valitakse nimeks Anonymous
- "Ei" puhul jätkab nime ootamist ja nullib taimeri.
- (Näidake nimi ekraanile ka)
Mmap
- Kirjutage kettale fail mmaptest, millesse kirjutage mingid andmed, näiteks "Hello, World!"
- Korjake see fail mmap() funktsiooni abil mällu sellisel moel, et kui seda muudate, näiteks "Hello, mmap()", jõuab see muudatus ka faili tagasi.