“Dasturiy injiniring” fakulteti “MA‟lumotlar tuzilmasi va algoritmlar”




Download 1,33 Mb.
Pdf ko'rish
bet10/56
Sana18.05.2024
Hajmi1,33 Mb.
#242340
1   ...   6   7   8   9   10   11   12   13   ...   56
Bog'liq
b2d1fe5c-9484-4aea-a5e7-95281604b19a

 
1.3.2. Ko

rsatkichli toifa 
Ko„rsatkichlar ma‟lumotlarni emas, balki bu ma‟lumotlar joylashgan


17 
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  


18 
#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 

Download 1,33 Mb.
1   ...   6   7   8   9   10   11   12   13   ...   56




Download 1,33 Mb.
Pdf ko'rish

Bosh sahifa
Aloqalar

    Bosh sahifa



“Dasturiy injiniring” fakulteti “MA‟lumotlar tuzilmasi va algoritmlar”

Download 1,33 Mb.
Pdf ko'rish