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.
4.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
int puts(const char *s);
ko‘rinishida bo‘lib, u standrat oqimga argumentda ko‘rsatilgan satrni chiqaradi. Bunda satr oxiriga yangi satrga o‘tish belgisi ‘\n’ qo‘shiladi. Agar satrni oqimga chiqarish muvaffaqiyatli bo‘lsa puts() funksiyasi manfiy bo‘lmagan sonni, aks holda EOF qaytaradi.
Satrni o‘qish-yozish funksiyalarini ishlatishga misol tariqa-sida qo‘yidagi programmani keltirish mumkin.
#include
int main()
{
char *s;
puts(”Satrni kiriting: “);
gets(s);
puts(”Kiritilgan satr: ”);
puts(s);
return 0;
}
5.Formatli o‘qish va yozish funksiyalari
Formatli o‘qish va yozish funksiyalari - scanf() va printf() funksiyalari S tilidan vorislik bilan olingan. Bu funksiyalarni ishlatish uchun «stdio.h» sarlavha faylini programmaga qo‘shish kerak bo‘ladi.
Formatli o‘qish funksiyasi scanf() quyidagi prototipga ega:
int scanf(const char * [,...])
Bu funksiya standart oqimdan berilganlarni formatli o‘qishni amalga oshiradi. Funksiya, kirish oqimidagi maydonlar ketma-ket-ligi ko‘rinishidagi belgilarni birma-bir o‘qiydi va har bir maydonni satrida keltirilgan format aniqlashtiruvchi-siga mos ravishda formatlaydi. Oqimdagi har bir maydonga format aniqlashtiruvchisi va natija joylashadigan o‘zgaruvchining adresi bo‘lishi shart. Boshqacha aytganda, oqimdagi maydon (ajratilgan belgilar ketma-ketligi) ko‘rsatilgan formatdagi qiymatga akslanti-riladi va o‘zgaruvchi bilan nomlangan xotira bo‘lagiga joylashti-riladi (saqlanadi). Funksiya oqimdan berilganlarni o‘qish jarayo-nini «to‘ldiruvchi belgini» uchratganda yoki oqim tugashi natijasida to‘xtatishi mumkin. Oqimdan berilganlarni o‘qish muvafaqqiyatli bo‘lsa, funksiya muvafaqqiyatli aylantirilgan va xotiraga saqlangan maydonlar sonini qaytaradi. Agar hech bir maydonni saqlash imkoni bo‘lmagan bo‘lsa, funksiya 0 qiymatini qaytaradi. Oqim oxiriga kelib qolganda (fayl yoki satr oxiriga) o‘qishga harakat bo‘lsa, funksiya EOF qiymatini qaytaradi.
Formatlash satri - belgilar satri bo‘lib, u uchta toifaga bo‘linadi:
To‘ldiruvchi-belgilar – bu probel, ‘\t’, ‘\n’ belgilari. Bu belgilar formatlash satridan o‘qiladi, lekin saqlanmaydi.
To‘ldiruvchi belgilardan farqli belgilar – bu qolgan barcha ASCII belgilari, ‘%’ belgisilan tashqari. Bu belgilar formatlash satridan o‘qiladi, lekin saqlanmaydi.
12.1–jadval. Format aniqlashtiruvchilari va ularning vazifasi
Do'stlaringiz bilan baham: |