C++ dasturlash tilining fstream, exception,array kutubxonalari funksiyalari bilan ishlash
Mavzu: C++ dasturlash tilining fstream, exception,array kutubxonalari funksiyalari bilan ishlash Reja: Kirish. 1 bob C++ dasturlash tilining bilan ishlash 1.1 fstream kutubxonasi va uning funksiyalari 1.2 exception kutubxonasi va uning funksiyalari 1.3 array kutubxonasi va uning funksiyalari II bob C++ dasturlash tili kutubxonalari funksiyalaridan foydalanib dasturlar tuzish. 2.1. C++ dasturlash tilining fstream kutubxonasi funksiyalaridan foydalanib dasturlar tuzish. 2.2 . C++ dasturlash tilining excepiton kutubxonasi funksiyalaridan foydalanib dasturlar tuzish. 2.3 . C++ dasturlash tilining array kutubxonasi funksiyalaridan foydalanib dasturlar tuzish. Xulosa Foydalanilgan adabiyotlar
Kirish. C++ tilida qiymatlarni kiritish chiqarish uchun C tilidan o‘tgan stdio.h kutubxonasidan foydalaniladi. Bu kutubxonada mavjud funksiyalar klaviatura,printer, terminal kabi qurilmalarni fayl oqimlari sifatida qabul qiladi. Oqim – buo‘zaro bir jinsli sodir bo‘luvchi xususiyatga ega jarayondir. Oqimlar <cstdio>kutubxonasida fayl ko‘rsatgichlari kabi qayta ishlanadi. Fayl ko‘rsatgichlari – bu 28 oqimda unikal aniqlanib, bajariladigan amal uning parametri sifatida beriladi.Bukutubxonada 3 ta standart oqim mavjud; stdin,stdout va stderr lar. Bu oqimlarkutubxona chaqirilishi bilan avtomatik tarzda aniqlanadi [4,10]. Oqim xususiyatlar – Oqimlar bir qator xususiyatlarga ega ya‘ni ularda qanday funksiyalardan foydalanishmoqda va ular orqali ma‘lumotlarni chiqarishqanday amalga oshirilmoqda.Oqimlarning bunday xususiyatlarining ko‘pchilig―fopen‖ funksiyasi bilan aniqlangan: Ma’lumotlarni o’qish – yozish uchun ruxsat: Bu holat oqimdan o‘qish yoki fizik xotiraga ma‘lumotlarni yozish uchun qo‘llaniladi. Matn/Binar: Matnlar oqimi – bu har biri yakunlanuvchi satr deb tushuniladi. Matn holati satrlarni o‘z xarakteriga ko‘ra o‘qish yozishni amalga oshiradi. Binar – xarakterli oqim esa fizik xotiradan o‘qish yozishni to‘g‘ridan –to‘g‘ri amalga oshiradi. Orientatsiya: Faylni ochishda oqim hech qanday orientatsiyaga ega bo‘lmaydi. Bajarilayotgan amalga bog‘liq ravishda chiqariluvchi miqdorlar keng formatli bitlar yoki baytlar ko‘rinishida bo‘ladi.
1 bob C++ dasturlash tilining kutubxonalari bilan ishlash C++ tili kutubxonasi xuddi C tili kutubxonasi kabi aniqlanadi. Tashkil etilayotgan sarlavha fayli quyidagicha farqlarga ega: - Har bir sarlavha fayli xuddi C tilidagi kabi o‘z nomiga ega ammo «C» oldi qo‘shimchasiz va hech qanday kengaytmaga ega emas. Masalan, C tilidagi <cstdlib> sarlavha fayli C++ tilida stdlib.h bilan ekvivalent; - Kutubxonalarning har bir elementi std namespace nomlar fazosida aniqlanadi;Ammo C tili bilan muvofiqlikni saqlash maqsadida sarlavha fayli ―name.h ko‘rinishida bo‘ladi.‖ Bulardan tashqari C++ tilidagi o‘zgarishlar quyidagicha- wchar _t , char16_t, char32_t va bool turlari C++ tilining fundamental turlari hisoblanadi. Shuning uchun ham C da bular aniqlanmagan.Bulardan tashqari sarlavhada yana bir qancha kichik aniqlanishlar mavjud bo‘lib bulardan biri <iso 646.h> sarlavxa faylidir. U C++ tilining kalit so‘zlaridan biri hisoblanadi. - Quyidagi funksiyalarning parametrlarida bir qator o‘zgarishlar mavjud: strchr, strpbrk, strrchr, memchr, strstr - <cstdlib> sarlavxa faylida aniqlangan funksiyalarga C++ tilida qo‘shimchalar kiritilganligi kuzatiladi. C++ tili versiyalarida ayrim funksiyalar mazmun jihatidan aniqlangan parametrlarga qo‘shimcha turlarga ega masalan, float va lang double kabi. C++ 11 1990 yilda C tiliga qo‘shilgan. Bu jarayon xalqaro C tilini standartlashtirish uyushmasida amalga oshirilgan. Ammo 2011 yildagi C tilining ISO standarti C++ tili bilan mos kelmaydi. C va C++ tilida mavjud kutubxonalar (Sarlavxa fayllari): <cassert> (assert.h)-C tilining kutubxonasi <cctype> (ctype.h)- funksiyalar bilan muloqot o‘rnatish kutubxonasi <cerrno> (errno.h)- C tilida xatoliklar <cfloat> (float.h)- Suzuvchi vergulli sonlar uchun maxsus turlar <ciso646> (iso646.h) xalqaro standartlashtirish uyushmasi operatorlarni to‘g‘ri yozilishi bo‘yicha 656 ta muqobil tekshiruvlarni amalga oshiruvchi kutubxona hisoblanadi.
1.1 fstream kutubxonasi va uning funksiyalari fstream (qisqa "FileStreamiçin" ) dan bir header file C ++ Standard kutubxonasi / o'qish yozish uchun interfeysi beradi sinflar, usullari va vazifalari majmuini o'z ichiga oladi ma'lumotlarni bir dan / fayl . Oqim deb ataladigan ob'ektlar fayl ma'lumotlarini manipulyatsiya qilish uchun ishlatiladi . Ushbu faylga kiritilgan funksiyalar fayllardan bayt bo'yicha ham , bloklarda ham o'qish va xuddi shu tarzda yozish imkonini beradi. To'plam ma'lumotlar fayllariga kirish ketma-ketligini nazorat qilish uchun barcha kerakli funktsiyalarni, shuningdek, ko'plab yordamchi funktsiyalarni o'z ichiga oladi. Asosiy sinflar [ tahrir | kodni tahrirlash ] ios_base InputOutputStream_Base , butun oqim sinfi ierarxiyasining asosiy klassi. U umumiy funktsiyalar, turlar va sinflarni o'z ichiga oladi, asosan bayroqlarni (ko'rsatkichlarni) ifodalaydi. Ushbu bayroqlar pastki sinf funktsiyalari tomonidan qo'llaniladi fstream va funktsiyalar yordamida aniqlanishi mumkin ios_base . ios InputOutputStream , asosiy pastki sinf, u bilan birga ios_base oqim kutubxonasining barcha boshqa kichik sinflarini belgilaydi. Formatlash va xatolarni qayta ishlash bayroq funktsiyalarini, shuningdek, dan meros bo'lib qolgan ba'zi funktsiyalarni o'z ichiga oladi ios_base . ifstream "InputFileStream" , fayldan ma'lumotlarni o'qishni tashkil qiladi. Funksiyalari fayllarni o'qish uchun ishlatiladigan sinf. ofstream "OutputFileStream" , faylga ma'lumotlarni yozishni tashkil qiladi. Sinf faylga ma'lumotlarni yozish uchun ishlatiladi.
Umumiy funktsiyalar Bular kutubxonaning asosiy funktsiyalari bo'lib, asosiy sinflarning hech biriga kiritilmagan. Ular juda tez-tez ishlatiladi va har bir sinfdagi barcha ip ob'ektlariga qo'llanilishi mumkin. rdbuf ... Barcha ob'ektlar fstream fayl bufer ob'ekti bilan bog'lanishi mumkin filebuf . Sinf fstream ob'ektini bufer ob'ektiga solishtirish uchun funktsiyadan foydalaning rdbuf (argumentlarsiz). Bufer ob'ekti standart pastki sinf funktsiyalariga qaraganda fayldagi ma'lumotlar ustidan ko'proq nazoratni ta'minlaydi fstream . open() ... Ushbu usuldan foydalanib, ko'rsatilgan faylni oqim ob'ektlaridan biri bilan bog'lash orqali ochishingiz mumkin . O'tkazilgan argumentlarga qarab , fayl o'qish, yozish uchun (to'liq yoki ma'lumot qo'shish uchun), ikkilik yoki matn fayli sifatida ochilishi mumkin . is_open() ... Muayyan oqim ob'ekti bog'langan fayl hozirda ochiq yoki yo'qligini aniqlaydigan funksiya. Boolean qiymatni qaytaradi . Asosan foydalanilayotgan faylni ochishga urinayotganda kirish xatolarining oldini olish uchun foydalaniladi. Hech qanday dalil yo'q. close() ... Funktsiya faylni yopadi, ya'ni unga kirishni to'xtatadi va shu bilan uni boshqa funktsiyalar yoki dasturlar uchun bo'shatadi. Fstream header bir fayl ma'lumotlarni o'qish va faylga yozish uchun vazifalar beradi. Umuman olganda, u konsol bilan ishlaydigan iostream sarlavhasiga juda o'xshaydi , chunki konsol ham fayldir. Shuning uchun, barcha asosiy operatsiyalar iostream bo'yicha oldingi mavzuda bo'lgani kabi, kichik farqlar bilan bir xil . Eng keng tarqalgan operatsiyalar quyidagilar: 1. I/U qayta yo'naltirish operatorlari - << va >> 2. Getline () va get () c put () satrlarini yozish va o'qish usullari 3. yozish () va o'qish () usullaridan foydalangan holda oqimli yozish va o'qish 4. Fayllarni ochish / yaratish va yopish usullarini ochish () va yopish () 5 Faylning ochiqligini () va faylning oxiri eof () ekanligini tekshirish usullari 6 >> uchun formatlangan chiqishni kengligi () va aniqligi () bilan sozlash