53 - DARS. FAYLLAR. OQIMLI KIRITISH VA CHIQARISH.
C ++ tilining asosiy hususiyatlaridan biri oldindan rejalashtirilgan fayllar strukturasi yukligidir. Hamma fayllar, baytlar ketma-ketligi deb ko’riladi. U N I X operatsion sistemasida har bir qurilmaga «Mahsus fayl» mos keladi, shuning uchun C ++ bibliotekasidagi funktsiyalar fayllar bilan ham, qurilmalar bilan ham ma'lumot almashinishi uchun foydalaniladi. C ++ tili bibliotekasida kiritish – chiqarish, quyi darajadagi kiritish, chiqarish va portlar uchun kiritish – chiqarish, oqimli daraja tizim hususiyatlariga bog’lik bulishi uchun bu erda qaralmaydi.
Oqimli chiqarish va kiritishda ma'lumotlar bilan almashish baytma-bat amalga oshiriladi. Lekin tashki hotira qurilmalari bilan almashish oldidan belgilangan ma'lumotlar bloki orqali amalga oshiriladi odatda u blokning minimal hajmi 512 yoki 1024 baytga teng bo’ladi. Diskga o’qilishda ma'lumotlar operatsion qatordagi buferi yoziladi so’ngra baytma bayt buferga yig’iladi, so’ngra diskka har bir murojaat qilinganda yagona blok sifatida uzatiladi. Shuning uchun ma'lumot almashishi diskka to’g’ridan to’g’ri murojaat qilishiga ko’ra tezroq amalga oshadi. Shunday qilib oqim bu bu buferlash vositalari va fayldir.
Oqim bilan ishlashda qo’yidagi vazifalarni bajarish mumkin.
- Oqimlarni ochish va yopish.
- Simvol, qator satr ,formatlangan ma'lumot ihtiyoriy uzunlikdagi ma'lumotlarni kiritish yoki chiqarish va fayl ohiriga etganlik shartini tahlil qilish;
- Buferlash va bufer hajmini boshqarish;
- Ko’rsatkich oqimdagi o’rnini aniqlash yoki yangi o’ringa ko’chirish.
Bu vazifalarni boshqaruvchi funktsiyalar teng foydalanish dasturiga Stdio.h – faylini ulash lozim.
Dastur bajarilishi boshlanganda avtomatik ravishda 5 ta oqim ochilib, bulardan:
- Standart kiritish oqimi stdin;
- Standart chiqarish oqimi stdout;
- Hatolar haqida malumotlar standart oqimi stderr;
Dostları ilə paylaş: |