Belgilarni o‘qish-yozish funksiyalari
Belgilarni o‘qish-yozish funksiyalari makros ko‘rinishida amalga oshirilgan.
getc() makrosi tayinlangan oqimdan navbatdagi belgini qayta-radi va kirish oqimi ko‘rsatkichini keyingi belgini o‘qishga mos-lagan holda oshiradi. Agar o‘qish muvaffaqiyatli bo‘lsa getc() funksiyasi ishorasiz int ko‘rinishidagi qiymatni, aks holda EOF qaytaradi. Ushbu funksiya prototipi quyidagicha:
int getc(FILE * stream)
EOF identifikator makrosi
#define EOF(-1)
ko‘rinishida aniqlangan va o‘qish-yozish amallarida fayl oxirini belgilash uchun xizmat qiladi. EOF qiymati ishorali char turida deb hisoblanadi. SHu sababli o‘qish-yozish jarayonida unsigned char turidagi belgilar ishlatilsa, EOF makrosini ishlatib bo‘lmaydi.
Navbatdagi misol getc() makrosini ishlatishni namoyon qiladi.
#include
#include
int main()
{
char ch;
cout<<”Belgini kiriting: “;
ch=getc(stdin);
cout<<”Siz ”<return 0;
}
getc() makrosi aksariyat holatlarda stdin oqimi bilan ishlatilganligi sababli, uning getc(stdin) ko‘rinishiga ekvivalent bo‘lgan int getchar() makrosi aniqlangan. YUqoridagi misolda «ch=getc(stdin);» qatorini «ch=getchar();» qatori bilan almashtirish mumkin.
Belgini oqimga chiqarish uchun putc() makrosi aniqlangan va uning prototipi
int putc(int c, FILE*stream)
ko‘rinishida aniqlangan. putc() funksiyasi stream nomi bilan berilgan oqimga s belgini chiqaradi. Funksiya qaytaruvchi qiymati sifatida int turiga aylantirilgan s belgi bo‘ladi. Agar belgini chiqarishda xatolik ro‘y bersa EOF qaytariladi.
putc() funksiyasini standart stdout oqimi bilan bog‘langan holati - putc(c,strout) uchun putchar(c) makrosi aniqlangan.
Satrlarni o‘qish - yozish funksiyalari
Oqimdan satrni o‘qishga mo‘ljallangan gets() funksiyasining prototipi
char * gets(char *s);
ko‘rinishida aniqlangan. gets() funksiyasi standart oqimdan satrni o‘qiydi va uni s o‘zgaruvchisiga joylashtiradi. Joylashtirish payti-da oqimdagi ‘\n’ belgisi ‘\0’ belgisi bilan almashtiriladi. Bu funksiyani ishlatishda o‘qilayotgan satrning uzunligi s satr uchun ajratilgan joy uzunligidan oshib ketmasligini nazorat qilish kerak bo‘ladi.
puts() funksiyasi
Do'stlaringiz bilan baham: |