C++ dasturlash tilining ios, locale va set kutubxonalari funksiyalari bilan ishlash
Mavzu: C++ dasturlash tilining ios, locale va set kutubxonalari funksiyalari bilan ishlash Reja: 1. Kirish. 2. C++ dasturlash tilining ios, locale va set kutubxonalari funksiyalari. 3. Foydalanilgan adabiyotlar.
Kirish C++ dasturlash tili nomi C dasturlash tilidan kelib chiqqan bq`lib, ++ belgisi inkrement amali, ya`ni o'zgaruvchining qiymatini bittaga oshish amalidan olingan. C ++ dasturlash tili turli xil amaliy dasturlarni yaratish, operatsion tizimlarni, qurilma drayverlarini, shuningdek video o'yinlarni va boshqalarni yaratish uchun keng qo'llaniladi. C ++ dasturlash tili 1980-yillarning boshlaridaBell Laboratories firmasi xodimi Byorn Stroustrup tomonidan yaratilgan. Axborot kommunikatsion texnonologiyalarini taraqqiy etishida bevosita dasturlash tillarining o’rni beqiyos. Ayniqsa, hozirgi davrga kelib C++, Java, Delphi dasturlash tillar yordamida shaxsiy kompyuterlar uchun amaliy dasturiy to’plamlardan tashqari SmartPhone va Planshetlar uchun operatsion tizim (iOS, Android, Windows mobile, Symbian va h.k) va ilovalar yaratilmoqda. Informatsion texnologiyalarning yana bir muhim jihatlaridan biri shundaki, bu fan jadal sur’atlarda o‘sib, yil sayin yangidan-yangi yo‘nalishlarga, mutaxassisliklarga tarmoqlanib ketmoqda: algoritmik, mantiqiy, obyektga yo‘naltirilgan, vizual, parallel dasturlash texnologiyalari, animatsiya, multimediya, Web, ma’lumotlar bazasini boshqarish tizimlari, ko‘p prosessorli, neyron arxitekturali kompyuterlar va hokazo. Ko‘rinib turibdiki, informatika 4 meta fan darajasiga ko‘tarilib, uni bitta o‘quv kursi chegarasida to‘liq o‘zlashtirishning imkoni bo‘lmay qoldi. Informatsion texnologiyalar sohasi bo‘yicha rus va ingliz tillarida qo‘llanmalar juda ko‘p chop etilmoqda. Oxirgi yillarda o‘zbek tilidagi qo‘llanmalar ham ko‘payib qoldi. Ushbu taklif etilayotgan qo‘llanma asosan C++ dasturlash tilini o‘rganmoqchi bo‘lganlar uchun mo‘ljallangan. Shu sababli qo’llanmada C++ tiliga bog’liq boshlang’ich ma’lumotlar yoritilgan. Bu qo’llanmadan C++ dasturlash tilini o‘rganuvchilar, dastur tuzishni o‘rganayotganlar hamda “Dasturlash asoslari”, “Informatika va dasturlash” fanlaridan olingan nazariy bilimlarni mustahkamlash uchun foydalanishlari hisobga olingan. Ushbu qo‘llanmaga kiritilgan ma’lumotlar dasturlashning bazaviy kursidagi deyarli barcha bo‘limlarini, ya’ni skalyar turlar va boshqaruv operatorlaridan tortib, ma’lumotlarning murakkab turlari kabilarni o‘z ichiga oladi.
2. Berilganlarni qayta ishlash uchun dasturlash tillarida amallarning juda keng majmuasi aniqlangan. Amal - bu qandaydir harakat bo‘lib, u bitta (unar) yoki ikkita (binar) operandlar ustida bajariladi, hisob natijasi uning qaytaruvchi qiymati hisoblanadi. Ushbu qirralarning ochiq to'plamini belgilashingiz mumkin. Shuningdek, siz fasetlarning ixtiyoriy sonini belgilaydigan mahalliy ob'ektni yaratishingiz mumkin. Ushbu qirralarning oldindan belgilangan guruhlari standart C kutubxonasida funksiya tomonidan boshqariladigan mahalliy toifalarnisetlocale ifodalaydi . Turkum collate(LC_COLLATE) quyidagi jihatlarni o'z ichiga oladi: C++ Nusxalash collate<char> collate<wchar_t> Turkum ctype(LC_CTYPE) quyidagi jihatlarni o'z ichiga oladi: C++ Nusxalash ctype<char> ctype<wchar_t> codecvt<char, char, mbstate_t> codecvt<wchar_t, char, mbstate_t> codecvt<char16_t, char, mbstate_t> codecvt<char32_t, char, mbstate_t> Turkum monetary(LC_MONETARY) quyidagi jihatlarni o'z ichiga oladi: C++ Nusxalash moneypunct<char, false> moneypunct<wchar_t, false> moneypunct<char, true> moneypunct<wchar_t, true> money_get<char, istreambuf_iterator<char>> money_get<wchar_t, istreambuf_iterator<wchar_t>> money_put<char, ostreambuf_iterator<char>> money_put<wchar_t, ostreambuf_iterator<wchar_t>>
Turkum numeric(LC_NUMERIC) quyidagi jihatlarni o'z ichiga oladi: C++ Nusxalash num_get<char, istreambuf_iterator<char>> num_get<wchar_t, istreambuf_iterator<wchar_t>> num_put<char, ostreambuf_iterator<char>> num_put<wchar_t, ostreambuf_iterator<wchar_t>> numpunct<char> numpunct<wchar_t> Turkum time(LC_TIME) quyidagi jihatlarni o'z ichiga ola Nusxalash time_get<char, istreambuf_iterator<char>> time_get<wchar_t, istreambuf_iterator<wchar_t>> time_put<char, ostreambuf_iterator<char>> time_put<wchar_t, ostreambuf_iterator<wchar_t>> Turkum messages(LC_MESSAGES) quyidagi jihatlarni o'z ichiga oladi: C++ Nusxalash messages<char> messages<wchar_t> (Oxirgi toifa POSIX tomonidan talab qilinadi, lekin C standarti emas.) Ushbu oldindan belgilangan qirralarning ba'zilari iostreamraqamli qiymatlarni matn ketma-ketligiga aylantirishni boshqarish uchun sinflar tomonidan qo'llaniladi. Sinf lokali ob'ekti mahalliy til nomini sinf satrining ob'ekti sifatida ham saqlaydi . Mahalliy faset yoki mahalliy ob'ektni yaratish uchun noto'g'ri mahalliy til nomidan foydalanish runtime_error sinfi ob'ektini chiqaradi . Saqlangan mahalliy til nomi, "*"agar mahalliy til ob'ekti C uslubidagi til ob'ekt tomonidan taqdim etilganiga to'liq mos kelishiga ishonch hosil qila olmasa. Aks holda, namelocale_object ga qo'ng'iroq qilib, ba'zi mahalliy ob'ektlar uchun standart C kutubxonasida mos keladigan tilni o'rnatishingiz mumkin .setlocale(LC_ALL , locale_object.().c_str())
Dastur bajarilishi natijasida ekranda quyidagi sonlar satri paydo bo’ladi: 4 188 2 12 9 1 482 2 Razryadli mantiqiy amallar.Dastur tuzish tajribasi shuni ko‘rsatadiki, odatda qo‘yilgan masalani yechishda biror holat ro‘y bergan yoki yo‘qligini ifodalash uchun 0 va 1 qiymat qabul qiluvchi bayroqlardan foydalaniladi. Bu maqsadda bir yoki undan ortiq baytli o‘zgaruvchilardan foydalanish mumkin. Masalan, mantiqiy turdagi o‘zgaruvchini shu maqsadda ishlatsa bo’ladi. Boshqa tomondan, bayroq sifatida baytning razryadlaridan foydalanish ham mumkin. Chunki razryadlar faqat ikkita qiymatni – 0 va 1 sonlarini qabul qiladi. Bir baytda 8 razryad bo‘lgani uchun unda 8 ta bayroqni kodlash imkoniyati mavjud.