C++ dasturlash tilida fayllar bilan ishlash


Oqimlarni ochish va yopish


Download 255.77 Kb.
Pdf ko'rish
bet2/8
Sana05.10.2023
Hajmi255.77 Kb.
#1692541
1   2   3   4   5   6   7   8
Bog'liq
C dasturlash tilida fayllar bilan ishlash (1)

Oqimlarni ochish va yopish. Oqim ochilishi uchun, oldindan kiritilgan FILE 
tipidagi struktura bilan bog‘lash talab etiladi. FILE strukturasi ta’rifi iostream.h 
kutubxonasida joylashgan. Bu strukturada buferga ko‘rsatkich, o‘qilayotgan 
o‘ringa ko‘rsatkich va boshqa ma’lumotlar saqlanadi. Oqim ochilganda dasturda 
oqimga ko‘rsatkich, ya’ni FILE strukturali tipdagi obyektga ko‘rsatkich 
qaytariladi. Bu ko‘rsatkich quyidagicha e’lon qilinishi lozim: 
FILE *  
Masalan: FILE * fp 
Oqim ochish funksiyasi quyidagi ko‘rinishga ega: 
 =fopen(,
Masalan: fp=fopen(“a.tnt”, “r”)
Oqim bilan bog‘lik faylni quyidagi rejimlarda ochish mumkin: 
“w”- yangi fayl o‘qish uchun ochiladi. Agar fayl mavjud bo‘lmasa yangidan 
yaratiladi; 
“r” - mavjud fayl faqat o‘qish uchun ochiladi; 
“a” - fayl davom ettirish uchun ochiladi; 
“wt” - fayl yozish va keyingi tahrirlash uchun ochiladi. Fayl ixtiyoriy joyidan 
o‘qish yoki yozish mumkin; 
“rt”- fayl ixtiyoriy joyidan o‘qish yoki yozish mumkin, ammo fayl oxiriga 
qo‘shish mumkin emas; 
“at” - fayl ixtiyoriy joyidan o‘qish va yozish uchun ochiladi “wt” rejmdan 
farqli fayl oxiriga ma’lumot qo‘shish mumkin. 


Oqim ochilganda quyidagi xatolar kelib chiqishi mumkin: ko‘rsatilgan fayl 
mavjud emas(o‘qish rejimida); disk to‘la yoki yozishdan himoyalangan va hokazo. 
Shuningdek, fopen() funksiyasi bajarilganda dinamik xotira ishlatiladi. Agar 
xotirada joy mavjud bo‘lmasa, “not enough ” - xatosi kelib chiqadi. 
Ushbu hollarda ko‘rsatkich ~ NULL qiymatga ega bo‘ladi. 
Bu xatolar haqidagi ma’lumotlarni ekranga chiqarish uchun perror() 
funksiyasidan foydalaniladi. Ushbu funksiya iostream.h kutubxonasida saqlanadi 
va quyidagi ko‘rinishda yoziladi: 
void perror(court char * s); 
Diskda ochilgan fayllarni berkitish uchun quyidagi funksiyadan foydalaniladi. 
int fellove().

Download 255.77 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling