Ko‘rsatkichli toifa
Ko‘rsatkichlar ma’lumotlarni emas, balki bu ma’lumotlar joylashgan
xotiradagi manzilni o‘zida saqlaydi. Ko‘rsatkichlar xotirada bor yo‘g‘i 4 bayt joyni egallab, u ko‘rsatayotgan ma’lumotlar ancha katta joyni egallagan bo‘lishi mumkin. Ko‘rsatkichlar qanday ishlashini bilish uchun mashina xotirasi tashkil etilishining tayanch prinsiplarini bilish lozim. Mashina xotirasi 16 lik sanoq sistemasida raqamlangan yacheykalar ketma-ketligidan iboratdir. Har bir o‘zgaruvchining qiymati uning adresi deb ataluvchi alohida xotira yacheykasida saqlanadi. Ko‘rsatkichli toifadagi o‘zgaruvchilar o‘zida ana shu kabi o‘zgaruvchilar yoki boshqa ma’lumotlarning xotiradagi adresini saqlaydilar. C++ da o‘zgaruvchini ko‘rsatkichli toifada e’lon qilish uchun o‘zgaruvchi nomidan oldin * belgisi qo‘yiladi. Har bir o‘zgaruvchining toifasi bilan e’lon qilingani kabi ko‘rsatkichli o‘zgaruvchilar ham ma’lum bir toifa bilan e’lon qilinadi. Bunda ko‘rsatkichli o‘zgaruvchining toifasi – shu ko‘rsatkich ko‘rsatayotgan xotira yacheykasidagi ma’lumotning toifasi bilan bir xil bo‘lishi kerak. Masalan, int a=1 bo‘lsin. Ushbu o‘zgaruvchining adresini o‘zida saqlovchi b ko‘rsatkichli o‘zgaruvchini e’lon qilishda ham int toifasi ishlatiladi, ya’ni int *b. Endi bunday toifadagi o‘zgaruvchiga a o‘zgaruvchining adresini o‘zlashtirish uchun a ning oldiga & - adres operatorini qo‘yish zarur, ya’ni b=&a.
Misol.
#include
using namespace std;
int main()
{ short int a=1234567;
short int *b;
b=&a;
cout<
system("pause");
}
Ko‘rsatkichli toifalar yordamida fayllarga ham murojaat qilsa bo‘ladi, masalan quyida f.txt faylidagi ma’lumotlarni ekranga chiqarish dasturi keltirilgan:
#include
#include
using namespace std;
int main()
{
FILE *p;
char s;int i=0;
if((p=fopen("f.txt","r"))==NULL)
i cout<<"o'xshamadi";
else cout<<"ulandi\n";
while(s!=EOF){
s=fgetc(p);
if(s=='s')i++;
cout<
}
fclose(p); cout<<"s harfi "<
system("pause");
}
F .txt fayli tarkibi:
c++ tilida fayllar
bilan
ishlash dasturi
Dastur natijasi:
Ulandi c++ tilida fayllar bilan ishlash dasturi s harfi 3 marta qatnashgan
O ’ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI
MUHAMMAD AL- XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
MUSTAQIL ISH
“MA’LUMOTLARNING SOZLANGAN TURLARI ”
Toshkent 2022
Dostları ilə paylaş: |